Python易错题
第一章
高级语言程序要被机器执行,只有用解释器来解释执行。
F
已知 x等于3, 则 语句x=’3’是错误的。
F
注意题目是x=’3’而不是x==’3’
已知 x=3, 则执行“ x=7”后,id(x)的返回值与原来没有变化。
F
__是不等长编码。
A. ASCII码
B. Unicode码
C. UTF-8码
D. 以上都不
输出str对应的utf-8编码
1
print(s.encode("utf-8"))
第二章
Python 语句 print(0xA + 0xB)的输出结果是__
21
Python 表达式 sqrt(4)*sqrt(9)的值为__
6.0
sqrt类型为float
其实是math.sqrt()
complex的实部虚部类型都是float,conjugate返回共轭复数
Python 表达式 3**2**3 的值为__
6561
**的运算顺序从右往左,先算2**3
round(18.67, -1) = 20.0
注意是float类型
round(18.67)是int类(18),round(18.67, 0)是float类(18.0)
int(“101”, 2) = 5
二进制的101,转为十进制
注意引号
Python输出 print(“hello” ‘world’)的结果是__
helloworld
0 and 2 -> 0
1 and 2 -> 2
3 and 2 and 5 -> 5
3 and 0 and 5 -> 0
32.2//6 -> 5.0 (float)
32//6 -> 5 (int)
第三章
列表可以用find()函数来搜索数据是否在列表中
F
将列表中的元素顺序打乱的函数shuffle()不是random模块的函数或方法
F
random.shuffle(a)
字符串对象和元组对象是不可变对象,列表对象为可变对象
T
lst=[12, -5, -22, -10, -26, 35, 0, 49, 3, -21]
lst[:100] -> [12, -5, -22, -10, -26, 35, 0, 49, 3, -21]
lst[100:] -> []
lst[100] -> error
下面的程序当输入是
c d e a
时,输出是a c d e
1
2
3
4a = input().split(" ")
print("After sorted:")
for i in a.sort():
print(i)error 因为a.sort()直接在原序列上排序,无返回值
a.replace() 有返回 原序列不变 -> str
a.remove() 也在原序列上删除(但注意 只删除第一个)
要想得到[0,100]范围内的随机数,random.randint(0,n)里的n应该是:
100
第四章
带有else子句的异常处理结构,如果不发生异常则执行else子句中的代码
T
在异常处理结构中,不论是否发生异常,finally子句中的代码总是会执行的
T
第五章
集合的元素可以是任意数据类型
F
只能是不可变类型
列表可以作为字典的键
F
只能是不可变类型
集合不能append,不能取下标
第六章
print(type(lambda:3))的输出结果是__
在Python中,对于函数定义代码的理解,正确的理解是____。
A. 必须存在形参
B. 必须存在return语句
C. 形参和return语句都是可有可无的
D. 形参和return语句要么都存在,要么都不存在
C
在一个函数中如局部变量和全局变量同名,则__。
A. 局部变量屏蔽全局变量
B. 全局变量屏蔽局部变量
C. 全局变量和局部变量都不可用
D. 程序错误
A
函数可以改变哪种数据类型的实参?
A. int
B. string
C. list
D. float
C
`
python
def fun(x1,x2,x3,**x4):print(x1,x2,x3,x4)
fun(x1=1,x2=22,x3=333,x4=4444)
1
2
3
4
5
6
7
8
> 1 22 333 {'x4': 4444}
- ```python
def f1(a,b,c):
print(a+b)
nums=(1,2,3)
f1(nums)error
第七章
以”w”模式打开的文件无法进行读操作。
T
read函数返回的是列表。
F
readlines函数返回的是列表。
T
第八章
在类定义中隐藏对象的细节称为实例化
F
对于Python类中的私有成员,可以通过
对象名._类名__私有成员名
的方式来访问T
在面向对象程序设计中,函数和方法是完全一样的,都必须为所有参数进行传值
F
self不用传值
在Python中定义类时实例方法的第一个参数名称必须是self。
F
定义类时,在一个方法前面使用@classmethod进行修饰,则该方法属于类方法。
T
定义类时,在一个方法前面使用@staticmethod进行修饰,则该方法属于静态方法
T
在类中,具四个形式参数的方法通常在调用时有__个实际参数。
3
以下__不是面向对象程序设计的基本特征之一。
A. 继承
B. 多态
C. 抽象
D. 封装
期中
`
python
list1=[1,43]
list2=list1
list1[0]=22
print(list2[0])1
2
3
4
5
6
7
8
> 22
>
> ```python
> b = a #深拷贝
> c = a[:] #浅拷贝
> c = a.copy() #浅拷贝
>
样卷
`
python
lst=[1,2,3]
lst1=lst.copy()
print(id(lst)==id(lst1))1
2
3
4
5
6
> False
- ```python
lst=[{m:n} for m in 'ABC' for n in 'ABC' if m!=n]
print(lst)[{‘A’: ‘B’}, {‘A’: ‘C’}, {‘B’: ‘A’}, {‘B’: ‘C’}, {‘C’: ‘A’}, {‘C’: ‘B’}]