如何使用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自动化测试之setUp与tearDown实例
Sep 28 Python
跟老齐学Python之变量和参数
Oct 10 Python
python实现JAVA源代码从ANSI到UTF-8的批量转换方法
Aug 10 Python
python并发编程之多进程、多线程、异步和协程详解
Oct 28 Python
python用reduce和map把字符串转为数字的方法
Dec 19 Python
python3写爬取B站视频弹幕功能
Dec 22 Python
python3+PyQt5泛型委托详解
Apr 24 Python
tensorflow实现简单的卷积神经网络
May 24 Python
详解python中*号的用法
Oct 21 Python
python3-flask-3将信息写入日志的实操方法
Nov 12 Python
在pytorch中实现只让指定变量向后传播梯度
Feb 29 Python
opencv实现图像几何变换
Mar 24 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 截取字符串 分别适合GB2312和UTF8编码情况
2009/02/12 PHP
php生成随机颜色的方法
2014/11/13 PHP
分享php多功能图片处理类
2016/05/15 PHP
Prototype使用指南之ajax
2007/01/10 Javascript
Jquery 1.42 checkbox 全选和反选代码
2010/03/27 Javascript
jQuery html()方法使用不了无法显示内容的问题
2014/08/06 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
2017/04/01 Javascript
JS删除数组里的某个元素方法
2018/02/03 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
js实现下拉框二级联动
2018/12/04 Javascript
JS实现判断数组是否包含某个元素示例
2019/05/24 Javascript
JS用最简单的方法实现四舍五入
2019/08/27 Javascript
js实现左右轮播图
2020/01/09 Javascript
Python中time模块与datetime模块在使用中的不同之处
2015/11/24 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
Python生成器以及应用实例解析
2018/02/08 Python
python 对象和json互相转换方法
2018/03/22 Python
Python使用cx_Oracle模块操作Oracle数据库详解
2018/05/07 Python
python人民币小写转大写辅助工具
2018/06/20 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
2018/08/01 Python
Python线程之定位与销毁的实现
2019/02/17 Python
python文件转为exe文件的方法及用法详解
2019/07/08 Python
python要安装在哪个盘
2020/06/15 Python
Python实现七个基本算法的实例代码
2020/10/08 Python
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
马来西亚户外装备商店:PTT Outdoor
2019/07/13 全球购物
《手指教学》反思
2014/02/14 职场文书
初三学习决心书
2014/03/11 职场文书
领导莅临指导欢迎词
2015/09/30 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS
如何使用Maxwell实时同步mysql数据
2021/04/08 MySQL
python中24小时制转换为12小时制的方法
2021/06/18 Python
Python必备技巧之字符数据操作详解
2022/03/23 Python
VUE解决跨域问题Access to XMLHttpRequest at
2022/05/06 Vue.js