目录
卷面总分 题号 单选题 多选题 简答题 代码题 100 题分 54 12 8 26 得分
⼀、 单选题(每题3分,共计54分;得分)
1**.22%3表达式输出的结果为? A、7 B、1 C、0 D、5
22 ÷ 3 = 7...1 %取余->求余数 /得到的是浮点数、//整除->商、**:幂 - 返回x的y次幂
2*.3*1**3 表达式输出结果为? A、27 B、9 C、3 D、1
3*.以下代码的输出的结果是? A、False B、Hello C、没有任何输出 D、语法错误
a = False
if a:
print('Hello')
4*.以下代码的输出结果是? A. 2 1 B、[2, 1] C、2 D、0
for i in [1, 0]:
print(i + 1)
5**.Python中,那个变量是不合法的? A、True B、Num C、_list D、2name
标识符的命名规则:由字⺟数字和下划线组成,不能以数字开头。
6**.以下代码的输出结果是? A、0 B、10 C、4 D、以上结果都不对
i = sum = 0
while i <= 4:
sum += i # sum = sum + i
i = i + 1
print(sum)
7*.以下代码的输出结果是** A、PYTHON B、PYTHONSTRING C、PYTHN D、STRING
for char in 'PYTHON STRING':
if char == ' ':
break
print(char, end='')
if char == 'O':
continue
8**.以下代码的输出结果是? A、yes B、no C、编译出错 D、什么都不输出
x = True
y = False
z = False
if x or y and z: # 先计算and再计算or
print("yes")
else:
print("no")
9*.关于列表,描述错误的是?
- A、remove(5)⽅法,如果列表中不包含5会报错
- B、pop⽅法可以不指定参数
- C、pop是删除最后⼀个元素
- D、del 5,如果列表中不包含5不存在,会报错
10**.以下描述错误的是?
- A、for循环可以使⽤break
- B、for循环可以遍历字典
- C、for循环没有条件判断
- D、for循环可以使⽤continue
11*.以下代码输出的结果正确的是? A、22 B、12 C、10 D、14
a = 10
def func1(a):
a += 2
return a
a += func1(a)
print(a)a = a + func1(a)
a = 10 + func1(10)
a = 10 + 12
12**.以下代码输出结果正确的是? A、2 B、5 C、3 D、报错
def func1(*args, a=3, **kwargs):
print(a)
func1(1, 2, a=5)
13**.下列说法错误的是?
- A、推导式中可以不进⾏条件筛选
- B、推导式中必须使⽤for循环
- C、推导式中必须⽤range()进⾏计数 可以写成列表
- D、推导式中可以不使⽤遍历出的数据
14**.关于函数,下列描述错误的是?
- A、定义函数时⼩括号中的参数,⽤来接收参数⽤的,称为”形参”
- B、函数只能通过def进⾏定义 匿名函数
- C、函数的返回值可以为None
- D、调⽤函数很简单,通过函数名(),即可完成调⽤
15**.下列选项中对变量操作合法的是? A、x, y -= y, x B、x++ C、--x D、a+=1
16**.以下代码的运⾏结果是? A、4 B、5 C、8 D、12
my_list = [1, 2, 3, 4]
my_list.append([6, 5, 7, 8])
print(len(my_list)) # 5
print(my_list) # [1, 2, 3, 4, [6, 5, 7, 8]]
17**.Python的os模块对⽂件进⾏重命名、删除等下列操作对应的顺序是?
1.修改⽂件名os.rename、2.删除⽂件os.remove、3.建⽴⽂件夹os.mkdir、4.获取当前⽂件夹的路径os.getcwd
- A、os.rename、os.remove、os.mkdir、os.getcwd
- B、os.rename、os.remove、os.getcwd 、os.mkdir
- C、os.rename、os.remove、os.getcwd 、os.chdir
- D、os.rename、os.remove、os.mkdir、os.listdir
18**.下列哪个⽅法可以去除字符串两侧的空⽩字符?
- A、str.find( ) 查找字符串下标,存在返回下标,不存在-1
- B、str.split() 切割
- C、str.strip() 去除字符串两侧的空⽩字符
- D、str.join() 拼接
⼆、 多选题(每题4分,共计12分;得分)
19**.下列关于break和continue说法正确的是?
- A、break结束当前的循环中的整个循环
- B、continue⽤来结束本次循环,进接着执⾏下⼀次的循环
- C、break/continue只能⽤在循环中,除此之外不能单独使⽤
- D、break/continue在嵌套循环中,能对嵌套着的所有循环起作⽤ 只对最近的循环起作⽤
for i in range(5):
print('跑圈...')
for j in range(5):
if j == 2:
break
print('俯卧撑...')
20**.下列函数说法正确的是?
- A、调⽤函数是通过函数名()调⽤,
函数名可以相同- B、不同的函数可以定义相同名字的局部变量
C、不管在函数外还是函数内定义变量,都可以在所有函数内使⽤- D、函数返回值可以返回多个数据,默认是元组
21**.下列关于字典和列表的说法正确的是?
- A、字典是以键值对的形式存储数据的,字典是⽆序 的,通过键获取到对应值
- B、列表是有序的,通过下标获取到值
- C、使⽤字典可以存储⼀些有标识性的数据,可以为数据起⼀个特定的"名字”
- D、字典的键可以是列表 字典的键必须是不可变类型
三、 简答题(共计8分;得分)
22**.Python的数据类型中,哪些是可变,哪些是不可变?**
可变类型:list、dict、set;不可变类型:int、float、bool、str、tuple
23**.Python中变量的命名规则是?
标识符的命名规则:由字⺟数字和下划线组成,不能以数字开头。
四、 代码题(共计26分;得分)
24**.元素分类,有如下值集合 [11,22,33,44,55,66,77,88,99,90],将所有⼤于66的值保存⾄字典的第⼀个key对应的值中,将⼩于66的值保存⾄第⼆个key对应的值中。
my_list = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]
my_dict = {'key1': [], 'key2': []}
for i in my_list:
if i > 66:
my_dict['key1'].append(i)
else:
my_dict['key2'].append(i)
print(my_dict) # {'key1': [77, 88, 99, 90], 'key2': [11, 22, 33, 44, 55, 66]}
25**.统计字符串中字符出现的次数,如果是空格,不输出。如:"hello world" 字符串统计的结果为:{'l': 3, 'h': 1, 'w': 1, 'd': 1, 'o': 2, 'r': 1, 'e': 1}
my_str = 'hello world'
my_dict = {}
for i in my_str:
if i == ' ':
continue
my_dict[i] = my_str.count(i)
print(my_dict) # {'h': 1, 'e': 1, 'l': 3, 'o': 2, 'w': 1, 'r': 1, 'd': 1}