經過自己面試的經驗,我幫大家對python的知識點進行歸類,讓大家能在最短時間內掌握核心知識點,更高效的搞定 Python 面試!
今天我整理了關於“列表”的面試題,大家一起試試看自己的熟練程度吧
1、創建一個空列表,命名為names,往里面添加 Zhangsan、Lisi、Wangwu、Zhaoliu、LiuBei和Guanyu元素。
答:names=["Zhangsan","Lisi","Wangwu","Zhaoliu","LiuBei","Guanyu"];
2、往(1)中的names列表里Guanyu前面插入一個Zhangfei。
答:names.insert(-1,"Zhangfei");
3、把names列表中LiuBei的名字改成中文。
答:names[names.index("LiuBei")]="劉備";
4、往names列表中Wangwu后面插入一個子列表["Xiaoqiao","Daqiao"]。
答:names.insert(2,["Xiaoqiao","Daqiao"]);
5、返回names列表中Zhaoliu的索引值(下標)。
答: print(names.index("Peiqi"));
6、創建新列表[1,2,3,4,2,5,6,2],合並到names列表中。
答: numbers=[1,2,3,4,2,5,6,2]
names.extend(numbers) #extend()方法表示合並
print(names)
7、取出names列表中索引4-7的元素。
答: print(names[4:8])
8、取出names列表中索引2-10的元素,步長為2。(考點列表切片)
答: print(names[2:11:2]) #列表切片“顧頭不顧尾”,步長表示在指定范圍間隔取值
9、取出names列表中最后3個元素。
答: print(names[-3:]) # [-3:]表示取值范圍從列表的倒數第三個到末尾
10、循環names列表,打印每個元素的索引值和元素。
答:
#方法一
for i in names:
print(names.index(i),i)
#方法二
for index,i in enumerate(names):
print(index,i)
11、循環names列表,打印每個元素的索引值和元素,當索引值為偶數時,把對應的元素改成-1。(考點列表元素,索引循環)
答:
for index,i in enumerate(names):
if index%2==0:
names[index]=-1
print(index,1)
print(names)
12、names列表里有3個2,請返回第二個2的索引值,不要人肉,要動態找。(考點列表循環)
答:
#方法一 循環
count=0
for index,i in enumerate(names):
# print(index,i)
if i ==2:
count+=1
while count==2:
print(index)
break
else:
continue
#方法二
print(names.index(2,names.index(2)+1))
13、現有商品列表如下:(考點-列表,循環)
products = [["華為",6888],["小神通",14800],["小米9",2499],["瑞幸咖啡",31],["小黃書",60],["李寧",699]],需打印出以下格式:使用enumerate()函數
------商品列表------
華為 6888
小靈通 14800
小米9 2499
瑞幸咖啡 31
小黃書 60
李寧 699
參考答案如下:
products=[["華為",6888],["小靈通",14800],["小米9",2499],["瑞幸咖啡",31],["小黃書",60],["李寧",699]]
for index,i in enumerate(products):
print("%s %s %s"%(i[0],i[1]))