面试小试题
(1) a = [1,2,3,4,5],a[::2]=?,a[-2:]=?
[1,4,5] #按照步长取值 [3,5] #从后面第二个取值
(2)一行代码实现对列表a中的偶数位置的元素进行加3后求和?
li = sum([a[i]+3 for i in range(len(a)) if i%2!=0])
(3)列表a的元素顺序打乱,在对a进行排序得到列表b,然后把a和b按照元素的顺序构造一个字典d
import random a = [1,2,4,3,5] random.shuffle(a) #打亂列表a print(a) b = sorted(a) #排序列表 print(b) dic = {} for i in range(len(a)): #拼接字典 dic[a[i]] = b[i] print(dic)
(4) 字符串中的空行替换成一个空格,不允许用split,正则,strip
a = "a b ctrrtr " new_str = '' base_str = '' for i in a: if base_str == i and base_str == " ": continue else: new_str += i base_str = i print(new_str)