1、执行这行代码结果是多少[i**i for i in range(3)]
我写的答案是[0,1,3],忘记了0**0是1
[1,1,3]
2、关于python内存管理:变量可以无需指定类型,可以使用del释放资源,变量不必事先声明
但是变量无需创建和赋值而直接使用是会报错的,is not defined
3、关于字符串:字符串应该视为长度为1的字符串,既可以用单引号,也可以用双引号创建字符串,在三引号字符串中可以包含换行回车等特殊字符
字符串以 标志字符串的结束是错误的
4、下列代码运行结果是?a=map(lambda x:x**3,[1,2,3])list(a)
[1,8,27]
5、有一段python的编码程序如下:
urllib.quote(line.decode('gbk').encode('utf-16')),请问经过该编码的字符串的解码顺序是
url解码 utf16 gbk
字符串编译的过程是:gbk==unicode==utf16==url编码
字符串解码顺序是:url解码==utf16==unicode==gbk
6、what gets printed? Assuming python version 2.x() print type(1/2)
<type 'int'>
7、下列表达式值为True的是
A (3,2) < ('a','b')
B 3 > 2 > 2
C 'abc' > 'xyz'
D 5+4j > 2-3j
答案是a,在python2中正确执行,在python3中报错
8、下列哪种函数参数定义不合法?
A def myfunc(*args):
B def myfunc(a=1,**args):
C def myfunc(*args,a=1):
D def myfunc(arg1=1):
答案是C,在python2中,c选项是错的,因为a=1被当做了默认参数,而默认参数只能在可变参数之前
Python2参数顺序:必选参数、默认参数、可变参数和关键字参数
在Python3中,c选项是对的,因为a=1被当做了命名关键字参数,而命名关键字参数需要在可变参数之后
python3参数顺序:必选参数、默认参数、可变参数、命名关键字参数和关键字参数
8、在python2.7中,下列哪种是Unicode编码的书写方式?
a=u'中文'
9、下列哪种说法是错误的
对的:除字典类型外,所有标准对象均可以用于布尔测试,空列表对象的布尔值是False,空字符串的布尔值是False
错的:值为0的任何数字对象的布尔值是False
10、从运行层面看,从四个选项选出不同的一个
A ObjectC
B Python
C C#
D JAVA
答案是B
11、如何解释下面的执行结果?print 1.2-1.0==0.2False
因为浮点数无法精确表示
12、下面python语句正确的是
A if (x>y) print x
B while True:pass
C max=x>y?x:y
D min=x if x < y =y
答案是B