python3yupython2的差别
2024-08-30 04:29:24
1.长整型
# python2中才有长整型概念,python3中只有整形一说
# 定义方法:变量名=整数+l (小写L)
#python2环境下
>>> a=123456789123456789
>>> type(a)
<type 'long'>
>>> a
123456789123456789L # 末尾有l
>>> b=123l #定义长整型
>>> type(b)
<type 'long'>
2.input
# 在python3中
input:用户输入任何值,都存成字符串类型 # 在python2中
input:用户输入什么类型,就存成什么类型,用户必须手动指定输入的数据类型
raw_input:等于python3的input,输入的都是字符串
3..range
python2中
1.range其实就是一个列表,print(range(1,10))输出[1,2,...,8,9],那么如果是range(1,1亿)得多少内存才行!!
2.xrange其实就是你python3中的range python3中
range是一个老母猪,你需要值的时候我才给你,print(range(1,10))输出结果还是range(1,10)
4.键keys(),值values(),键值对items()
d1 = {'name':'jason','password':123}
print(d1.keys()) # dict_keys(['name', 'password']) 老母猪
for k in d1.keys():
print(k) #name password
print(d1.values()) # dict_values(['jason', 123]) 老母猪 现在就把它当成一个列表来看即可 print(d1.items()) # dict_items([('name', 'jason'), ('password', 123)])
# 就把它看成是列表套元组,元组的第一个元素是字典的key 第二个元素是字典的value python2中:
都是直接输出一个列表,比较占用内存
5.print x
6.编码问题
基于Python2 解释器开发的软件不能识别中文,只要是中文,前面都需要加一个u,强制使用unicode编码,unicode类型也是python2独有
python2将py文件按照文本文件读入解释器中默认使用ASCII码(因为在开发python2解释器的unicode还没有盛行)
python3中使用utf-8
7.包里面 _init_ 文件
#python2和python3的不同
python2如果要导入包 包下面必须要有__init__.py文件
python3如果要导入包 包下面没有__init__.py文件也不会报错
当你在删程序不必要的文件的时候 千万不要随意删除__init__.py文件
最新文章
- eclipse项目迁移到android studio(图文最新版)
- 从清月高中物理动学课件制作工具说【FarseerPhysics引擎之WheelJoint】及【PropetryGrid之动态下拉列表】
- 每日一语:What is he getting at?
- Supermarket_贪心
- UML建模之活动图介绍(Activity Diagram)
- PAT-乙级-1006. 换个格式输出整数 (15)
- (一)学习C#之浮点类型float小结
- $_REQUEST变量数组header()函数
- Pagekit安装
- Android创建启动画面[转]
- int 与 int *
- Spring Boot实战之数据库操作
- MariaDB的";response time";插件
- 【bzoj 3306】树
- flask记录
- Angular4.0中常用指令
- 【Java入门提高篇】Day22 Java容器类详解(五)HashMap源码分析(上)
- Hadoop2.6.5集群搭建
- Java泛型类型擦除以及类型擦除带来的问题
- LintCode题解之Search Range in Binary Search Tree