如何使用repr调试python程序


Posted in Python onFebruary 28, 2020

一般调试程序的时候都比较倾向print,利用直接打印的方法作出判断,但是print只能打印出结果,对类型无法作出判断。例如:

复制代码
a = 5
b = '5'
print(a)
print(b)

结果为:
5
5
复制代码
对于a和b从表面看是一样的,可能就会默认为a == b

实则a为int类型,b为string类型

再用repr看看结果:

复制代码
a = 5
b = '5'
print(repr(a))
print(repr(b))

结果为:
5
'5'
复制代码
对于动态的python对象来说,利用repr也是很方便的:

复制代码
class OpenClass(object):
def __init__(self, x, y):
self.x = x
self.y = y

obj = OpenClass(2,3)
print(obj)
# 结果为:<__main__.OpenClass object at 0x101cb7390>
复制代码
用repr重建对象:

复制代码
class OpenClass(object):
def __init__(self, x, y):
self.x = x
self.y = y

def __repr__(self):
return 'OpenClass(%d,%d)'%(self.x, self.y)
obj = OpenClass(2,3)
print(obj)
# 结果为:OpenClass(2,3)
复制代码
对于print只能打印出易于阅读的信息,而类型则显示不出来

repr则显示出类型,简明的展示出数据信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python函数中定义参数的四种方式
Nov 30 Python
Python读写unicode文件的方法
Jul 10 Python
十条建议帮你提高Python编程效率
Feb 16 Python
Python的Asyncore异步Socket模块及实现端口转发的例子
Jun 14 Python
Numpy数据类型转换astype,dtype的方法
Jun 09 Python
Python3导入CSV文件的实例(跟Python2有些许的不同)
Jun 22 Python
对TensorFlow的assign赋值用法详解
Jul 30 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
Jul 03 Python
Python定时任务APScheduler原理及实例解析
May 30 Python
python自动提取文本中的时间(包含中文日期)
Aug 31 Python
PyCharm上安装Package的实现(以pandas为例)
Sep 18 Python
详解NumPy中的线性关系与数据修剪压缩
May 25 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
Feb 28 #Python
python对文件的操作方法汇总
Feb 28 #Python
最新2019Pycharm安装教程 亲测
Feb 28 #Python
Python发送手机动态验证码代码实例
Feb 28 #Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
Feb 28 #Python
Python3使用xlrd、xlwt处理Excel方法数据
Feb 28 #Python
Python进程Multiprocessing模块原理解析
Feb 28 #Python
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
在IIS7.0下面配置PHP 5.3.2运行环境的方法
2010/04/13 PHP
如何让CI框架支持service层
2014/10/29 PHP
javascript仿php的print_r函数输出json数据
2013/09/13 Javascript
javascript实现校验文件上传控件实例
2015/04/20 Javascript
Javascript实现计算个人所得税
2015/05/10 Javascript
jQuery实现高亮显示网页关键词的方法
2015/08/07 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
使用JavaScript获取Request中参数的值方法
2016/09/27 Javascript
浅析js的模块化编写 require.js
2016/12/07 Javascript
JQuery.validationEngine表单验证插件(推荐)
2016/12/10 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
Angular4实现鼠标悬停3d倾斜效果
2017/10/25 Javascript
Vue+Element实现动态生成新表单并添加验证功能
2019/05/23 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
javascript实现前端成语点击验证优化
2020/06/24 Javascript
对python3 一组数值的归一化处理方法详解
2018/07/11 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
python验证身份证信息实例代码
2019/05/06 Python
一篇文章彻底搞懂Python中可迭代(Iterable)、迭代器(Iterator)与生成器(Generator)的概念
2019/05/13 Python
pandas通过字典生成dataframe的方法步骤
2019/07/23 Python
使用遗传算法求二元函数的最小值
2020/02/11 Python
Woolworth官网:澳洲第一大超市
2017/06/25 全球购物
医院实习接收函
2014/01/12 职场文书
国庆节文艺活动方案
2014/02/03 职场文书
办公室文员自荐书
2014/02/03 职场文书
高中军训感想800字
2014/02/23 职场文书
日语系毕业求职信
2014/07/27 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
医院党建工作总结2015
2015/05/26 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
人事部:年度述职报告范文
2019/07/12 职场文书
Redis 哨兵集群的实现
2021/06/18 Redis
Win11如何设置右键单击显示所有选项?Win11右键单击显示所有选项设置教程
2022/04/08 数码科技