如何使用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中字符串和数字拼接报错的方法
Oct 23 Python
Django中Forms的使用代码解析
Feb 10 Python
python线程中同步锁详解
Apr 27 Python
python中实现字符串翻转的方法
Jul 11 Python
用python标准库difflib比较两份文件的异同详解
Nov 16 Python
python pands实现execl转csv 并修改csv指定列的方法
Dec 12 Python
Appium Python自动化测试之环境搭建的步骤
Jan 23 Python
Python之NumPy(axis=0 与axis=1)区分详解
May 27 Python
在Python中os.fork()产生子进程的例子
Aug 08 Python
Pycharm生成可执行文件.exe的实现方法
Jun 02 Python
Django显示可视化图表的实践
May 10 Python
python中__slots__节约内存的具体做法
Jul 04 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
php缩放gif和png图透明背景变成黑色的解决方法
2014/10/14 PHP
PHP中Memcache操作类及用法实例
2014/12/12 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
2017/06/19 PHP
使用Entrust扩展包在laravel 中实现RBAC的功能
2020/03/16 PHP
PHP实现文件上传与下载
2020/08/28 PHP
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
JavaScript入门之事件、cookie、定时等
2011/10/21 Javascript
火狐下table中创建form导致两个table之间出现空白
2013/09/02 Javascript
js实现select跳转功能代码
2014/10/22 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
vue中动态设置meta标签和title标签的方法
2018/07/11 Javascript
Python过滤txt文件内重复内容的方法
2018/10/21 Python
对numpy中的where方法嵌套使用详解
2018/10/31 Python
python文件拆分与重组实例
2018/12/10 Python
python 执行文件时额外参数获取的实例
2018/12/18 Python
Python之pymysql的使用小结
2019/07/01 Python
python中调试或排错的五种方法示例
2019/09/12 Python
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
Happy Plugs官网:瑞典无线耳机品牌
2020/07/16 全球购物
教学大赛获奖感言
2014/01/15 职场文书
大专会计自我鉴定
2014/02/06 职场文书
计算机毕业生求职信
2014/06/10 职场文书
竞选大队干部演讲稿
2014/09/11 职场文书
民主生活会对照检查材料(统计局)
2014/09/21 职场文书
一年级班主任工作总结2014
2014/11/08 职场文书
2015年国庆节演讲稿范文
2015/07/30 职场文书
2016感恩母亲节校园广播稿
2015/12/17 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
小学生作文写作技巧100例,非常实用!
2019/07/08 职场文书
2019年大学生暑期社会实践调查报告模板
2019/11/07 职场文书
基于Redis位图实现用户签到功能
2021/05/08 Redis