一.填空题
1.s = "Python", 能够显示输出Python 的选项是(D)
A.print(s[0:-1])
B.print(s[-1:0])
C.print(s[:5])
D.print(s[:])
2.若k为整数,则下列循环执行的次数为(B)
k=1000 while k>1: print(k) k=k/2
A.9
B.10
C.11
D.12
3.以下程序运行输出为(A)
balance = 20 while True: if balance <9: break balance -= 9 print("balance is %d" % balance)
A.balance is 2
B.balance is 7
C.balance is 11
D.程序无限循环,无输出
4.以下程序运行时,输入12 18 24 10,输出结果是(D)
s = 0 inp1 = [int(x) for x in input().split()] for item in inp1: if item > 20: continue s += item print(s)
A.12
B.30
C.54
D.40
5.下列选项中,会输出1,2,3三个数字的是( C)。
A.for i in range(3)
print(i)
B.for i in range (2):
print(i+1)
C.a_list=[0, 1, 2]
for i in a_list:
print(i+1)
D.i=1
while i<3:
print (i) i=i+1
6.元组和列表之间的主要差别是(D)
A.元组之间的元素不能用逗号进行分隔
B.元组只能包含字符串元素
C.元组不能把列表作为元素进行存储
D.一旦元组被创建,就不能更改
7.有代码如下:
s=input();print(len(s))
则在输入以下数据后得到结果是( A)
Hello World
A.11
B.6
C.5
D.12
8.以下选项中,属于不可变序列的是(B)。
A.列表
B.元组
C.集合
D.字典
9.下列哪个函数可以作用于元组对象?(D)
A.append()
B.extend()
C.insert()
D.len()
10.有如下代码,程序执行结果是(A )。
for ch in 'PYTHON STRING': if ch == ' ': break print(ch, end='') if ch == 'O': continue
A.PYTHON
B.PYTHONSTRING
C.PYTHN
D.替换为错误项
11.表达式max('1111', '222', '33', '4')的值是?(D)
A.1111
B.222
C.33
D.4
12.对于字符串:str1='SDUTCSSEno1',欲获得切片:'1onESS' ,使用的方式是(D)
A.str1[-6:-1]
B.str1[-1:-6]
C.str1[-1:-6:-1]
D.str1[-1:-7:-1]
13.下面代码的输出结果是(C)
a = [[1,2,3], [4,5,6], [7,8,9]]
s = 0
for c in a:
for j in range(3): s += c[j]
print(s)
A.0
B.24
C.45
D.以上答案都不对
14.有一个list1=[1,2,3,4,5,6,7,[1,2,3],2,32],欲获得一个新列表,其元素为:去掉list1首尾元素,可以利用哪个表达式?(C)
A.list1[0:-1]
B.list1[0:0]
C.list1[1:-1]
D.list1[2:-2]
15.如下语句执行后会输出( C)行 "I love python"
i=10 while i>=0: print ("I love python") i=i-1
A.1
B.10
C.11
D.12
16.想要得到输出结果为”张三的身高是180cm,体重是60kg“,则代码应为(C )
A.
student = ['张三', 18, '男', 180, 60] print(student[0]+"的身高是"+student[3]+"cm,体重是"+student[4]+"kg")
B.
student = ['张三', 18, '男', 180, 60] print("{}的身高是{}cm,体重是{}kg".format(student[1],student[4],student[5]))
C.
student = ['张三', 18, '男', 180, 60] print("{}的身高是{}cm,体重是{}kg".format(student[0],student[3],student[4]))
D.
student = ['张三', 18, '男', 180, 60] print(student[0],"的身高是",student[3],"cm,体重是",student[4],"kg")
二.填空题
1.表达式((3,)×2)×2的结果是(3,3,3,3)
2.10进制转16进制
decimal = eval(input("Enter an integer: ")) hexString = "" value = ___(1)___ while value != 0: single = value % 16 if single == 15: hexString = "F" + hexString elif single == 14: hexString = "E" + hexString elif single == 13: hexString = "D" + hexString elif single == 12: hexString = "C" + hexString elif single == 11: hexString = "B" + hexString elif single == 10: hexString = "A" + hexString else: hexString = ___(2)___+ hexString value = ___(3)___ print(str(decimal) + "'s hex representation is " + hexString)
在下面9个答案中选择,空格中填编号,如A等。
A)single B) decimal C) hexString D) value/16 E) value//16 F)value%16 G) str(single) H)str(hexSting) I)singles
(1)的答案是 B
(2)的答案是 G
(3)的答案是 E
3.列表的修改
请写出下述程序的执行结果
lst=[23,56,8,900,24] lst.remove(8) lst.append(30) lst.insert(1,22) lst.extend([66,90]) lst.pop(2) lst.pop() lst.sort() lst.reverse() print(lst)
执行结果为:[900, 66, 30, 24, 23, 22]
4.如果条件为真,则_____if-else_____语句将执行一个语句块,如果条件为假,则将执行另一个语句块。
5.列表的遍历及运算,以及简单的程序逻辑分析。
请写出下述程序的执行结果:
def main(): s = [12,-4,32,-36,12,6,-6] s_max, s_sum = 0, 0 for i in range(len(s)): s_sum += s[i] if s_sum >= s_max: s_max = s_sum elif s_sum < 0: s_sum = 0 print(s_max) main()
执行结果为:40
6.与while循环及break有关程序分析。
请写出下述程序的执行结果:
i = 1 while i + 1: if i > 4: print("%d" % i) i += 1 break print("%d" % i) i += 1 i += 1
执行结果第1行:1
执行结果第2行:3
执行结果第3行:5
7.input()函数会将接收的数据以 字符串 类型返回。(提示:填写的是某种数据类型)
8.在列表中查找元素时可以使用 not in 和in运算符。
9.下面程序的输出是 2 2
t=1 t,a=2,t+1 print(t,a)
10.print(sum((1,3,5,7,9))/len((1,3,5,7,9))) 的输出是 5.0
11.请录入并调试运行下述程序,写出程序的执行结果:
a = [1,1] b = [2,3] print(a+b) print(b*3) print("victory "*3)
程序执行结果的第1行:[1, 1, 2, 3]
程序执行结果的第2行:[2, 3, 2, 3, 2, 3]
程序执行结果的第3行:victory victory victory
注意:执行结果需要从真实的执行结果中进行复制,以避免因为多余的空格等因素被OJ判错。
12.若要按照从小到大的顺序排列列表中的元素,可以使用reverse = False方法实现。
三,编程题
1. 合并两个列表并去重
输入两个列表alist和blist,要求列表中的每个元素都为正整数且不超过10; 合并alist和blist,并将重复的元素去掉后输出一个新的列表clist。 可以使用以下实现列表alist的输入: alist=list(map(int,input().split())) 同时为保证输出结果一致,请将集合内元素排序之后再输出。 如对于列表alist,可输出sorted(alist)。
输入格式: 共两行,每一行都用来输入列表中的元素值,以空格隔开(可能不至一个空格 )。
输出格式: 共一行,以列表形式打印输出。
代码如下:
alist=list(map(int,input().split())) blist=list(map(int,input().split())) clist=sorted(list(set(alist+blist))) print(clist)
2 .列表排序、逆序
已知列表元素为[12,3,48,6,79,63,89,7],对列表进行逆序输出、升序排序输出、逆序排序输出。
输入格式:无
输出格式:列表逆序结果为:[7, 89, 63, 79, 6, 48, 3, 12] 列表升序排序结果为:[3, 6, 7, 12, 48, 63, 79, 89] 列表降序排序结果为:[89, 79, 63, 48, 12, 7, 6, 3]
代码如下:
list=[12,3,48,6,79,63,89,7] list = list[::-1] print("列表逆序结果为:%s"%(list)) list=sorted(list) print("列表升序排序结果为:%s"%(list)) list.sort(reverse=True) print("列表降序排序结果为:%s"%(list))
3. 找列表中最大元素的下标
输入一个整数列表,找出整数列表中最大元素的下标,如果最大元素的个数超过1,那么请打印输出所有的下标。
输入格式:数字1,数字2,数字3,....,数字n
输出格式:下标1 下标2 ... 下标k
代码如下:
m=eval(input()) for i in range(len(m)): if m[i] == max(m): print(i)
4. 列表插入
输入一个字符串 s 和一个非负整数 i, 列表 ls = ['2', '3', '0', '1', '5'],在指定的位置 i 和 列表末尾分别插入用户输入的字符串 s。当 i >=5 时,相当于在列表末尾插入两次字符串 s 。
输入格式:第一行输入一个字符串
第二行输入一个非负整数
输出格式:插入新数据后的列表
代码如下:
s=input() i=eval(input()) ls = ['2', '3', '0', '1', '5'] if(i<5): ls.append(s) ls.insert(i,s) else: ls.append(s) ls.append(s) print(ls)
5 .输出字母在字符串中位置索引
输入一个字符串,再输入两个字符,求这两个字符在字符串中的索引。
输入格式:第一行输入字符串
第二行输入两个字符,用空格分开。
从右向左输出字符和索引,即下标最大的字符最先输出。每行一个。
代码如下:
x = input() m,n = input().split(' ') for index in range(len(x)-1,-1,-1): if m == x[index]: print('{:d} {:s}'.format(index,m)) elif n == x[index]: print('{:d} {:s}'.format(index,n))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)