谈一谈Python中str()和repr()的区别
时间:2022-05-08
本文章向大家介绍谈一谈Python中str()和repr()的区别,主要内容包括前言、总结、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
前言
在学习BeautifulSoup文档的时候发现了一个以前不常见的Python内建函数repr()
,带着好奇对这个内建函数进行了一番搜索和学习。
总结
str()
与repr()
都是Python的内建函数,通过它们可以方便地以字符串的方式获取对象的内容、类型、数值属性等信息。大多数情况下他们的效果相同,但是既然是不同的函数肯定有不同的地方,概括起来可以这样说str()
会将对象转化为可读性较好的字符串,而repr()
会将对象转化为供解释器读取形式的字符串。一个对象没有适于人阅读的解释形式的话,str()
会返回与repr()
相同的值。
其中,数值或list、tuple、字典等这样的结构,针对各种函数都有着统一的解读方式。而字符串不同函数可能有着不同的解读方式。
举例
- 在下列情况下两者效果相同: 123456789101112131415161718192021222324>>> str(123)'123'>>> repr(123)'123'>>> str((1, 2, 3, 4, 5))'(1, 2, 3, 4, 5)'>>> repr((1, 2, 3, 4, 5))'(1, 2, 3, 4, 5)'>>> str([1, 2, 3, 4, 5])'[1, 2, 3, 4, 5]'>>> repr([1, 2, 3, 4, 5])'[1, 2, 3, 4, 5]'>>> str({1: 2, 3: 4})'{1: 2, 3: 4}'>>> repr({1: 2, 3: 4})'{1: 2, 3: 4}'>>> str(4.53-2j)'(4.53-2j)'>>> repr(4.53-2j)'(4.53-2j)'>>> str(2e10)'20000000000.0'>>> repr(2e10)'20000000000.0'
- 下列情况两者效果出现差异: 12345678>>>hi = 'hello worldn Python'>>> hi'hello worldn Python'>>> print(str(hi))hello world Python>>> print(repr(hi))'hello worldn Python'
- Linux系统监控、诊断工具之top命令详解
- 【Dev Club分享】iOS黑客技术大揭秘
- Linux终端:用cat命令查看不可见字符
- golang 函数定义及其接口实例
- 分享两种圣诞节雪花特效JS代码(网站下雪效果)
- React 移动 web 极致优化
- golang 高效字符串拼接
- Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程
- golang 使用时间通过md5生成token
- golang中对map操作类
- Nginx在线服务状态下平滑升级或新增模块的详细操作记录
- 【Dev Club分享】微信读书iOS性能优化
- [svn: E155004]svn update报database is locked错误的解决办法
- WordPress高亮插件:Crayon Syntax Highlighter加载优化
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- GORM V2 自动迁移和迁移接口的方法
- Vue Nginx反向代理配置 解决生产环境跨域
- react的事件处理为什么要bind this 改变this的指向?
- 没有用到React,为什么我需要import引入React?
- JSON对象和JavaScript对象直接量的区别--不同之处
- (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
- 关于DOM的理解
- 关于闭包函数和递归函数的详细理解
- 新手怎么学JS?JavaScript基础入门
- 纯CSS制作加<div>制作动画版哆啦A梦
- Ubuntu 18.04 安装使用 Supervisor 进程守护并设置开机自动启动
- AWS CLI version 2 在 Windows 下的安装
- Vue事件绑定原理
- 组合
- 用navicat进行身份验证连接出现cannot connect to Mongodb authentication failed