没有合适的资源?快使用搜索试试~ 我知道了~
python与 python的区别.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 200 浏览量
2023-02-22
19:28:17
上传
评论
收藏 242KB DOCX 举报
温馨提示
python与 python的区别.docx
资源推荐
资源详情
资源评论
python2 与 python3的区别
几乎所有的 python2 程序都需要一些修改才能正常的运行在 python3 的环境下。为了简化这个转换过程,Python3 自带了一个 2to3 的实用脚本.这个脚本会将
python2 程序源文件作为输入,然后自动转换到 python3.但并不是所有内容都可以自动转换。
print 语句
python2 中 print 是一个语句,不论想输出什么,直接放到print 关键字后面即可。python3 里,print()是一个函数,像其他函数一样,print()需要你将要输出的
东西作为参数传给它。
python2
print
python3
print()
备注
输出一个空白行,python3 需要调用不带参数的 print()
输出一个值,将值传入 print()函数
输出使用空格分割的两个值,使用两个参数调用print()
print 1
print(1)
python2 中如果使用一个,作为 print 结尾,将会用空格分割输出的结果,然后在输出一个尾随的空格,而
不输回车。python3 里,把 end=' ' 作为一个关键字传给 print()可以实现同样的效果,end 默认值为'',
所以通过重新指定 end 参数的值,可以取消在末尾输出回车符号
print >>
print(1, 2, 3,
python2 中,可以通过>>pipe_name 语法,把输出重定向到一个管道,比如sys.stderr.在 python3 里,
可以通过将管道作为关键字参数 file 的值传递给 print()完成同样的功能。
sys.stderr, 1, 2, file=sys.stderr
3
UNICODE 字符串
python2 中有两种字符串类型:Unicode 字符串和非 Unicode 字符串。Python3 中只有一种类型:Unicode 字符串。
python2
python3
备注
ur'PapayaWhip\foo' r'PapayWhip\foo' Unicode 原始字符串(使用这种字符串,python 不会自动转义反斜线"\")也被替换为普通的字符串,因
为在 python3 里,所有原始字符串都是以 unicode 编码的。
python2有两个全局函数可以把对象强制转换成字符串:unicode()把对象转换成 unicode 字符串,还有 str()把对象转换为非 Unicode 字符串。Python3 只有一
种字符串类型,unicode 字符串,所以 str()函数即可完成所有的功能。
LONG 长整型
python2 有非浮点数准备的 int 和 long 类型。int 类型最大值不能超过 sys.maxint,而且这个最大值是平台相关的。可以通过在数字的末尾附上一个L来定义
长整型,显然,它比 int 类型表示的数字范围更大。在 python3 里,只有一种整数类型 int,大多数情况下,和 python2中的长整型类似。
python2
python3
python2 中的十进制长整型在 python3 中被替换为十进制普通整数
python2 里的十六进制长整型在 python3 里被替换为十六进制的普通整数
python3 没有 long()
type(x) is long
type(x) is int
python3 用 int 判断是否为整型
isinstance(x, long)
isinstance(x, int)
int 检查整数类型
<>比较运算符
字典类方法 HAS_KEY()
返回列表的字典类方法
在 python2 里,许多字典类方法的返回值是列表。最常用方法有keys, items 和 values。python3,所有以上方法的返回值改为动态试图。在一些上下文环境
里,这种改变不会产生影响。如果这些方法的返回值被立即传递给另外一个函数,而且那个函数会遍历整个序列,那么以上方法的返回值是列表或视图并不
会产生什么不同。如果你期望获得一个被独立寻址元素的列表,那么python3 的这些改变将会使你的代码卡住,因为视图不支持索引。
python2
python3
备注
a_dictionary.keys()
a_dictionary.items()
a_dictionary.iterkeys()
python3 不再支持 iterkeys,使用 iter()将 keys()的返回值转换为一个迭代器
min(a_dictionary.keys())
no change
对 min(),max(),sum(),list(),tuple(),set(),sorted(),any()和 all()同样有效
从 python2 到 python3,标准库里的一些模块已经被重命名。还有一些相互关联的模块也被组合或则重新组织,使得这种关联更有逻辑性。
python3 中几个相关的 http 模块被组合成一个单独的包,即 http
python2
python3
备注
http.client 模块实现一个底层的库,可以用来请求和
解析 http
import cookie
import cookielib
import
http.cookiejar 可以操作 cookies 文件
http.cookiejar
import BaseHTTPServer import SimpleHTTPServer import
CGIHttpServer
import http.server
http.server 实现了一个基本的 http 服务器
URLLIB
python2 中用来分析、编码和获取 URL 的模块,但是比较混乱,python3 中,这些模块被重构,组合成为一个单独的包,即urllib
| python2 | python3 | 备注 | import urllib | import urllib.request, import urllb.parse, import urllib.error | | import urllib2 | import urllib.request, urllib.error | |
import urlparse | import urllib.parse | | import robotparser | import urllib.robotparser | | from urllib import FancyURLopener | from urllib.rquest import
FancyURLopener from urllib.parse | |from urllib2 import Request from urllib2 import HTTPError | from urllib.request import Request from urllib.error import
HTTPError |
DBM
所有的 DBM 现在都在一个单独的包里,即 dbm。如果需要其中某个特定的变体,比如GNU DBM,可以导入 dbm 包中合适的模块。
python2
备注
import dbm
import gdbm
import dbm.ndbm
import dbm.gnu
剩余17页未读,继续阅读
资源评论
我是你的春哥!
- 粉丝: 1w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (33269446)全国省市县经纬度xml数据(全)
- ip地址查询城市php代码
- jieba分词自定义分词词表
- (6340824)C语言学生信息管理系统
- 床、自行车、瓶子、碗、公交车、食堂、小型车检测12-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- (6351410)c++经典程序200例
- (7276248)c语言图书管理系统
- (9368016)C++ STL使用
- (10377004)C语言下实现的学生管理系统
- (15341010)经典C程序一百例
- (174549194)ANSYS Fluent Tutorial Guide
- (175909636)全国293个地级市的经纬度信息
- 尚硅谷宋红康C语言精讲.zip
- 视图库级联抓包,支持GA/T1400-2018版,包括Register, keepalive, subscribe, subscribeNotification等
- ip地址查询区域代码包括php c++ python golang java rust代码使用例子
- C语言结构体精讲,结构体在内存中的访问
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功