列举你了解的所有Python2和Python3的区别?
'''
# py2
>>> print("hello", "world")
('hello', 'world')
# py3
>>> print("hello", "world")
hello world
py2:input_raw()
py3:input()
1/2的结果
py2:返回0
py3:返回0.5
py2:默认编码ascii
py3:默认编码utf-8
字符串
py2:unicode类型表示字符串序列,str类型表示字节序列
py3::str类型表示字符串序列,byte类型表示字节序列
py2中函数用关键字global声明某个变量为全局变量,但是在嵌套函数中,想要给一个变量声明为非局部变量是没法实现的。
py3中,新增了关键字nonlocal,使得非局部变量成为可能
'''
用一行代码实现数值交换:
'''
a = 1
b = 2
------------------
a,b = b,a
'''
Python3 和 Python2 中 int 和 long 的区别?
'''
python2:
int() # 整型
long() # 长整型
python3中没有long类型,只有int类型
'''
xrange 和 range 的区别?
'''
xrange 用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器。
注意:现在的python3中将以前的range取消了,而将xrange重新命名成了range!所以我们现在看到的range其实本质还是xrange~。
'''
如何实现字符串的反转?如:name="张全蛋"请反转为name= "蛋全张"
'''
name="张全蛋"
name[::-1]
> '蛋全张'
'''
文件操作时:xreadlines和readlines的区别?
'''
readlines()是把文件的全部内容读到内存,并解析成一个list,当文件的体积很大的时候,需要占用很多内存
xreadlines()则直接返回一个iter(file)迭代器,在Python 2.3之后已经不推荐这种表示方法了.直接使用for循环迭代文件对象
'''
列举布尔值为False的常见值?
'''
0, [] , () , {} , '' , False , None
'''
is 和==的区别?
'''
is比较的是id
== 比较的是值
'''
哪些情况下,y! = x - (x-y)会成立?
'''
x,y是两个不相等的非空集合
'''
现有字典 dict={‘a’:24,‘g’:52,‘i’:12,‘k’:33}请按字典中的 value 值进行排序?
'''
sorted(dict.items(),key = lambda x:x[1])
'''