# 1、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex', 'eric', 'rain'] li = ['alex','eric','rain'] print('_'.join(li)) # 2、查找列表中元素,移除每个元素的空格,并查找以a或A开头并且以c结尾的所有元素。 li = ["alec", " aric", "Alex", "Tony", "rain"] tu = ("alec", " aric", "Alex", "Tony", "rain") dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"} for i in li: i = i.strip() if i.startswith('a') or i.startswith('A'): if i.endswith('c'): print(i) for i in tu: i = i.strip() if i.startswith('a') or i.startswith('A'): if i.endswith('c'): print(i) for i in dic.values(): i = i.strip() if i.startswith('a') or i.startswith('A'): if i.endswith('c'): print(i) #方法二: for i in dic: n = dic[i].strip() if n.startswith('a') or n.startswith('A'): if n.endswith('c'): print(n) # 3、写代码,有如下列表,按照要求实现每一个功能 li=['alex', 'eric', 'rain'] # 计算列表长度并输出 print(len(li)) # 列表中追加元素“seven”,并输出添加后的列表 li.append('seven') print(li) # 请在列表的第1个位置插入元素“Tony”,并输出添加后的列表 li.insert(0,'Tony') print(li) # 请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表 li[1]='Kelly' # 请删除列表中的元素“eric”,并输出修改后的列表 li.remove('eric') print(li) # 请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表 print(li.pop(1)) print(li) # 请删除列表中的第3个元素,并输出删除元素后的列表 print(li.pop(2)) print(li) # 请删除列表中的第2至4个元素,并输出删除元素后的列表 del li[1:4] print(li) # 请将列表所有的元素反转,并输出反转后的列表 li.reverse() print(li) # 请使用for、len、range输出列表的索引 for i in range(len(li)): print(i) # 请使用enumrate输出列表元素和序号(序号从100开始) for i in enumerate(li,100): print(i) # 请使用for循环输出列表的所有元素 for i in li: print(i) # 4、写代码,有如下列表,请按照功能要求实现每一个功能 li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446] # 请根据索引输出“Kelly” print(li[2][1][1]) # 请使用索引找到'all'元素并将其修改为“ALL”,如:li[0][1][9]... li[2][2] = 'ALL' print(li) # 5、写代码,有如下元组,请按照功能要求实现每一个功能 tu=('alex', 'eric', 'rain') # 计算元组长度并输出 print(len(tu)) # 获取元组的第2个元素,并输出 print(tu[1]) # 获取元组的第1-2个元素,并输出 print(tu[:2]) # 请使用for输出元组的元素 for i in tu: print(i) # 请使用for、len、range输出元组的索引 for i in range(len(tu)): print(i) # 请使用enumrate输出元祖元素和序号(序号从10开始) for i in enumerate(tu,10): print(i) # 6、有如下变量,请实现要求的功能 tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) # 讲述元祖的特性 # 请问tu变量中的第一个元素“alex”是否可被修改? '''不可修改''' # 请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven” '''字典''' tu[1][2]['k2'].append('Seven') print(tu[1][2]) # 请问tu变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven” '''元组,不能修改''' u[1][2]['k3'].append('Seven') print(tu[1][2]) '''tu[1][2]['k3'].append('Seven') AttributeError: 'tuple' object has no attribute 'append''' # 7、字典 dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]} # 请循环输出所有的key for i in dic: print(i) for i in dic.keys(): print(i) # 请循环输出所有的value for i in dic.values(): print(i) # 请循环输出所有的key和value for i in dic: print(i,dic[i]) for key,i in dic.items(): print(key,i) # 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典 dic['k4'] = 'v4' print(dic) # 请在修改字典中“k1”对应的值为“alex”,输出修改后的字典 dic['k1'] = 'alex' print(dic) # 请在k3对应的值中追加一个元素44,输出修改后的字典 dic['k3'].append(44) print(dic) # 请在k3对应的值的第1个位置插入个元素18,输出修改后的字典 dic['k3'].insert(0,44) print(dic) # 8、转换 # 将字符串s = "alex"转换成列表 print(list(s)) # 将字符串s = "alex"转换成元祖 print(tuple(s)) # 将列表li = ["alex", "seven"]转换成元组 print(tuple(li)) # 将元祖tu = ('Alex', "seven")转换成列表 print(list(li)) # 将列表li = ["alex", "seven"]转换成字典且字典的key按照10开始向后递增 li = ["alex", "seven"] dic = {} for k,i in enumerate(li,10): dic[k] = i print(dic) # 9、元素分类 # 有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。 # 即:{'k1':大于66的所有值, 'k2':小于66的所有值} li = [11,22,33,44,55,66,77,88,99,90] dic = {'k1':[],'k2':[]} for i in li: if i > 66: dic['k1'].append(i) else: dic['k2'].append(i) print(dic) # 10、输出商品列表,用户输入序号,显示用户选中的商品 # 商品li = ["手机", "电脑", '鼠标垫', '游艇'] # 允许用户添加商品 # 用户输入序号显示内容 li = ["手机", "电脑", '鼠标垫', '游艇'] shopping_car = [] while True: for index,i in enumerate(li,1): print("%s %s" %(index,i)) choice = input("请输入商品序号:") if choice.isdigit(): choice = int(choice) if choice > 0 and choice < len(li): shopping_car.append(li[choice]) print("输入的商品是:%s"%(li[choice])) else: print("商品不存在!") elif choice == 'q': if len(shopping_car) > 0: print("你已添加以下商品:%s" %(shopping_car)) break else: print("输入有误,请重新输入") # 11、用户交互显示类似省市县N级联动的选择 # 允许用户增加内容 # 允许用户选择查看某一个级别内容 # 12、列举布尔值是False的所有值 None,'' {} [] () # 13、有两个列表 # l1 = [11,22,33] # l2 = [22,33,44] # 获取内容相同的元素列表 for i in l1: if i in l2: print(i) # 获取l1中有,l2中没有的元素列表 for i in l1: if i not in l2: print(i) # 获取l2中有,l1中没有的元素列表 for i in l2: if i not in l1: print(i) # 获取l1和l2中内容都不同的元素 li = [] for i in l2: if i not in l1: li.append(i) for i in l1: if i not in l2: li.append(i) print(li) # 14、利用For循环和range输出 # For循环从大到小输出1 - 100 for i in range(1,101): print(i) # For循环从小到大输出100 - 1 for i in range(100,0,-1): print(i) # While循环从大到小输出1 - 100 i = 1 while i <101: print(i) i += 1 # While循环从小到到输出100 - 1 i = 100 while i > 0: print(i) i -= 1 # 15、利用for循环和range输出9 * 9乘法表 for i in range(1,10): for j in range(1,i+1): # print(i, "*", j, "=",i*j) print("%s*%s=%2s "%(j, i, i * j), end='') print('') # 16、求100以内的素数和。(编程题) num=[] i=2 for i in range(2,100): j=2 for j in range(2,i): if(i%j==0): break else: num.append(i) print(sum(num)) # 17、将[1,3,2,7,6,23,41,24,33,85,56]从小到大排序(冒泡法)(编程) lis=[1,3,2,7,6,23,41,24,33,85,56] for i in range(len(lis)-1): if lis[i] > lis[i+1]: lis[i],lis[i+1] = lis[i+1],lis[i] print(lis) li = [1,3,2,7,6,23,41,24,33,85,56] for i in range(len(li)-1): # i的范围0-9 for j in range(i+1,len(li)): # j的范围1-10 if li[i] > li[j]: # 相邻的两个数比较 li[i],li[j] = li[j],li[i] print(li)