1.将['alex','eric',’rain’]用下划线拼接成字符串。(['alex','eric',123]呢?)
1 li=['alex','eric','rain'] 2 v='_'.join(li) 3 print(v)
当列表是字符串和数字组合时:
1 li=['alex','eric',123] #先将数字转化为字符串。join()是字符串函数 2 li[2]=str(li[2]) 3 v='_'.join(li) 4 print(v)
分析:join方法将字符串或者字符拼接,不能将数字和字符串拼接,故要先将列表的数字元素转化为字符串。列表元素修改直接索引方式赋值。
2.查找列表中的元素,移除每个元素的空格,并查找以a或A开头,并以c结尾的所有元素。
1 li = ['alec', 'aric', 'Alex', 'Tony', 'rain'] 2 tu = ('alec', 'aric', 'Alex', 'Tony', 'rain') 3 dic = {'k1':'alec', 'k2':'aric', 'k3':'Alex', 'k4':'Tony'} 4 #移除空格 lstrip 5 result=[] 6 for item in li: 7 if item[0]== 'a' or item[0]=='A' and item[-1]=='c': 8 result.append(item) 9 print(result) 10 for item in tu: 11 if item[0]== 'a' or item[0]=='A' and item[-1]=='c': 12 result.append(item) 13 print(result) 14 for item in dic.values(): 15 if item[0]== 'a' or item[0]=='A' and item[-1]=='c': 16 result.append(item) 17 print(result)
解析:循环+if条件判断,生成空列表,将找到的元素用append方法加入。
3.写代码,有如下列表,按照每个功能实现:
li=['alex','eric',’rain’]
a.计算长度并输出
b.列表中追加元素’seven’,并输出添加后的列表。
c.请在列表的第一个位置插入元素’Tony’,并输出添加后的列表。
d.请修改列表的第二个位置的元素为’Kelly’,并输出添加后的列表。
e.请删除列表的元素’eric’,并输出修改后的列表。
f.请删除列表的第二个元素,并输出删除元素的值和删除元素后的列表。
g.请删除列表的第三个元素,并输出删除元素后的列表。
h.请删除列表的第二个至第四个元素,并输出删除元素后的列表。
i.请将列别所有的元素反转,并输出删除元素后的列表。
j.请使用for、len、range输出列表的索引
k.请使用enumerate输出列表元素和序号(序号从100开始)
l.请使用for循环输出列表所有元素
1 li=['alex','eric','rain'] 2 # a.计算长度并输出 3 v=len(li) 4 print(v) 5 # b.列表中追加元素’seven’,并输出添加后的列表。 6 li.append('seven') 7 print(li) 8 # c.请在列表的第一个位置插入元素’Tony’,并输出添加后的列表。 9 li.insert(0,'Tony') 10 print(li) 11 # d.请修改列表的第二个位置的元素为’Kelly’,并输出添加后的列表。 12 li[1]='Kelly' 13 print(li) 14 # e.请删除列表的元素’eric’,并输出修改后的列表。 15 del li[1] 16 print(li) 17 # f.请删除列表的第二个元素,并输出删除元素的值和删除元素后的列表。#pop()可以返回删除元素的值 18 v=li.pop(1) 19 print(v,li) 20 # j.请使用for、len、range输出列表的索引 21 li=['alex','eric','rain'] 22 for i in range(len(li)): 23 print(i) 24 # k.请使用enumerate输出列表元素和序号(序号从100开始) enumerate(sequence, [start=0]) 25 li = ['alex', 'eric', 'rain'] 26 # list(enumerate(li,start=100)) 27 v=list(enumerate(li,start=100)) 28 print(v) 29 # l.请使用for循环输出列表所有元素 30 li = ['alex', 'eric', 'rain'] 31 for item in li: 32 print(item)
解析:len、索引、enumerate方法(有助于由列表生成字典)
4.写代码,有如下列表,请按照功能要求实现每一个功能
li=[‘hello’,’seven’,[‘mom’,[‘h’,’kelly’],’all’],123,446]
a.根据索引输出’Kelly’
b.使用索引找到’all’元素并将其修改为’ALL’
1 li=['hello','seven',['mom',['h','kelly'],'all'],123,446] 2 # v = li.capitalize(**li[2][1][1]) 3 # v= li[2][1][1] 4 t=v.capitalize() #capitalize(self) 5 print(t) 6 ###############b############### 7 v=li[2][2] 8 t=v.upper() 9 print(t)
解析:capitalize(self);upper()
6.tu=(‘alex’,[11,22,{‘k1’:’v1’,’k2’:[‘age’,’name’],’k3’:(11,22,33)},44]),请问tu变量中的’k2’对应什么类型?是否可以被修改?如果可以,请在其中添加一个元素’seven’
1 tu=('alex',[11,22,{'k1':'v1','k2':['age','name'],'k3':(11,22,33)},44]) 2 tu[1][2]['k2'].append('seven') #append()直接追加到self,不需要再赋值。 3 print(tu)
解析:元祖第一级元素不能修改;append
7.字典
1 dic={'k1':'v1','k2':'v2','k3':[11,22,33]} 2 #a.请循环输出所有的key 3 for item in dic.keys(): 4 print(item) 5 #b.请循环输出所有的value 6 for item in dic.values(): 7 print(item) 8 #c.请循环输出所有的key和value 9 for item in dic.items(): 10 print(item) 11 #d.请在字典中添加一个键值对,’k4’:’v4’,输出添加后的字典 12 dic.update({'k4':'v4'}) 13 print(dic) 14 #e.请修改字典中’k1’对应的值为’alex’,输出修改后的字典 15 dic = {'k1': 'v1', 'k2': 'v2', 'k3': [11, 22, 33]} 16 dic['k1'] = 'alex' 17 print(dic) 18 #f.请在k3对应的值中追加一个元素44,输出修改后的字典 19 dic['k3'].append(44) 20 print(dic) 21 #g.请在k3对应的值的第一个位置插入元素18,输出修改后的字典 22 dic['k3'].insert(0,18) 23 print(dic)
解析:keys;values;items;update;索引
8.转换
1 #a .将字符串s=‘alex’转换成列表 2 s='alex' 3 s=list(s) 4 print(s) 5 #b .将字符串s=‘alex’转换成元组 6 s='alex' 7 s=tuple(s) 8 print(s) 9 #c . 将列表li=[‘alex’,‘seven’]转换成元组 10 li=['alex','seven'] 11 li=tuple(li) 12 print(li) 13 #d .将元组tu=(‘alex’,‘seven’)转换成列表 14 li=('alex','seven') 15 li=list(li) 16 print(li) 17 #e 将列表li=[‘alex’,‘seven’]转换成字典且字典的key按照10开始向后递增 ################################# 18 li=['alex','seven'] 19 dic = { } 20 for k,v in enumerate(li,start=10): 21 dic[k]=v 22 print(dic)
解析:enumerate(*,[start]=0);tuple;list;dict
9.元素分类
有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存在字典的第一个key中,将小于66的值保存至第二个key中。
即:{‘k1’:大于66的所有值,‘k2’:小于66的所有值}
1 li=[11,22,33,44,55,66,77,88,99,90] 2 dic={ 'k1':[],'k2':[]} 3 for item in li: 4 if item > 66: 5 dic['k1'].append(item) 6 if item < 66: 7 dic['k2'].append(item) 8 print(dic)
解析:1.初始dic的建立;2.append的用法。
10.输出商品列表,用户输入序号,显示用户选中的商品
商品li=[‘手机’,‘电脑’,‘鼠标垫’,‘游艇’]
a .允许用户添加商品
b . 用户输入序号显示内容
1 li=['手机','电脑','鼠标垫','游艇'] 2 dic={} 3 for k,v in enumerate(li,start=1): 4 dic[k]=v 5 print(dic) 6 n=input("如果想添加商品请输入1,如果想显示内容请输入2:") 7 n=int(n) 8 if n==1: 9 sp=input("请输入想添加的商品:") 10 dic.update({5:sp}) 11 print(dic) 12 else: 13 nu=input('请输入1-5的序号:') 14 nu=int(nu) 15 v=dic.get(nu) 16 print(v) 17 print('-------end-------------')