惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
B
Blog
A
About on SuperTechFans
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
IT之家
IT之家
D
Docker
Google DeepMind News
Google DeepMind News
罗磊的独立博客
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
D
DataBreaches.Net
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta

博客园 - ________囧丶殇

django系列 - 安装和新建项目 SQL - 基础 javascript刷新父页面 SQL - 约束 C语言(8) - 反转单向链表 C语言(7) - 数据结构之单向链表 C语言(6) - 各种排序算法的比较 C语言(5) - 选择排序 快速排序 C语言(4) - 插入排序 C语言(3) - 冒泡排序 归并排序 C语言(2) - 从指针开始 C语言(1) - 开始之前 python实践 - 抓取网页中的图片和数据 python实践 - 下载文件 python补充(1) python笔记(十) - 异常和文件处理 python笔记(九) - 类 part2 python笔记(八) - 类 part1 python笔记(七) - and和or
python补充(2) - 内置函数
________囧丶殇 · 2009-04-28 · via 博客园 - ________囧丶殇

1,cmp函数比较两个对象,如果小于返回负整数,大于的话返回正整数,相等返回0.

>>> a,b = 1,-1
>>> cmp(a,b)
1
>>> cmp(b,a)
-1
>>> a=-1
>>> cmp(a,b)
0

 如果比较的是自定义对象,则会调用自定义对象的__cmp__函数。在__cmp__内容可以定义对象的比较方式

2.str(),repr(),''

>>> str([1,2,3])
'[1, 2, 3]'
>>> repr([1,2,3])
'[1, 2, 3]'
>>> '[1,2,3]'
'[1,2,3]'
>>> eval(repr([1,2,3]))
[
123]
>>> eval('[1,2,3]')
[
123]
>>> 

 三种用法的作用基本相同,都是返回对象的字符串表示。

str用来将生成对象的字符串形式,repr和‘'作用可以说是相同的,也是返回对象的字符串表示,但是,这两种用法返回的字符串可以通过eval()函数得到原本的对象。但是str()则不行。

记住,并不是所有返回的字符串都可以通过eval()还原对象。如eval('type(type)')则会抛出异常。

3.浅拷贝和深拷贝

>>> list1 = ['a']
>>> list2 = list1
>>> id(list1)
13437528
>>> id(list2)
13437528
>>> import copy
>>> list3 = copy.deepcopy(list1)
>>> id(list3)
11330304
>>> 

list3就是list1的深拷贝了,从id可以看出来