#1.有两个列表 l1=[11,22,33] l2=[22,33,44] #a.获取内容相同的元素列表 l3=[] for i in l1: if i in l2: l3.append(i) print(l3) #b.获取l1中有,l2中没有的元素列表 l4=[] for i in l1: if i not in l2: l4.append(i) print(l4) #c.获取l2中有,l1中没有的元素列表 l5=[] for i in l2: if i not in l1: l5.append(i) print(l5) #d.获取l1和l2中内容不同的元素 l6=[] for i in l1: if i not in l2: l6.append(i) for i in l2: if i not in l1: l6.append(i) print(l6)
#2.利用for循环和range输出: #a.for循环从大到小输出1-100 for i in range(100,0,-1): print(i) #b.for循环从小到大输出100—1 for i in range(1,101): print(i) #c.while循环从大到小输出1-100 i=101 while i>1: i-=1 print(i) #d.while循环从小到大输出100-1 k=0 while k<100: k+=1 print(k)
#有1、2、3、4、5、6、7、8 8个数字,能组成多少个互不相同且 #无重复数字的两位数并输出这些数? li=[1,2,3,4,5,6,7,8] la=[] k=0 for i in li: for v in li: if i!=v: la.append(i*10+v) print(la[k]) k+=1 print(len(la))
#99乘法表 for a in range(1,10): s = "" for b in range(1,a+1): s+="{}x{}={}".format(b,a,a*b)+" " print(s)
#用python开发程序自动计算方案: # 公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买 # 100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡 # 要买多少刚好凑足100文钱? for gj in range(1,100//5): for mj in range(1,100//3): for xj in range(0,100): if gj+mj+xj==100 and 5*gj+3*mj+xj/3==100: print(gj,mj,xj) break
#用代码实现:利用下划线将列表的每一个元素拼接成字符串 li=['alex','exic','rain'] s="" for i in range(0,len(li)): s=s+"_".join(li[i])+"_" print(s)
#有以下列表: nums=[2,7,11,15,1,8,17] # 请找到列表中任意两个元素相加能够等于9的元素集合,和其对应索引的集合,如[(0,1,),(4,5,)] li=[] id=[] for i in range(0,len(nums)): for j in range(0,i+1): if nums[i]!=nums[j] and nums[i]+nums[j]==9: tu=(nums[i],nums[j]) idx=(i,j) li.append(tu) id.append(idx) print(li) print(id)
li=['alex','eric','rain'] #a.计算列表长度并输出 print(len(li)) #b.列表中追加元素'seven'并输出添加后的列表 li.append('seven') print(li) #c.请在列表的第1个位置插入元素"Tony",并输出 li.insert(0,"Tony") print(li) #d.请修改列表第2个位置的元素为"Kelly",并输出 li[1]='Kelly' print(li) #e.请删除列表中的元素'eric',并输出列表 li.remove('eric') print(li) #f.请删除列表中的第2个元素,并输出删除的元素的值和列表 v=li.pop(1) print(v,li) #g.请删除列表中的第3个元素,并输出删除元素后的李彪 del li[2] print(li) 》》》3 ['alex', 'eric', 'rain', 'seven'] ['Tony', 'alex', 'eric', 'rain', 'seven'] ['Tony', 'Kelly', 'eric', 'rain', 'seven'] ['Tony', 'Kelly', 'rain', 'seven'] Kelly ['Tony', 'rain', 'seven'] ['Tony', 'rain']
# # h.请删除列表中的第2至第4个元素,并输出删除元素后的列表 # del li[1:4] # print(li) #i.将列表元素反转,并输出 li.reverse() print(li) #j.请使用for、len、range输出列表索引 for index in range(0,len(li)): print(index) #k.请使用enumrate输出列表元素和序号(序号从100开始) for k,v in enumerate(li,100): print(k,v) #l.请使用for循环输出列表的所有元素 for i in li: print(i)
#16.分页显示内容 # a.通过for循环创建301条数据,数据类型不限,如: # alex-1 alex1@live.com pwd1 # alex-2 alex2@live.com pwd2 # alex-3 alex3@live.com pwd3 # ... user_list=[] for i in range(1,302): t={ "name":"alex{0}".format(i), "email":"alex{0}@live.com".format(i), "psw":"pwd{0}".format(i) } user_list.append(t) print(user_list) #b.提示用户 请输入要查看的页码,当用户输入指定页码,则显示指定数据 #注意: # -每页显示10条数据 # —用户输入页码是非十进制数字,则提示输入内容格式错误 while 1: ye_ma=input("请输入页码: ") s = int(ye_ma) start=(s-1)*10 end=s*10 result=user_list[start:end] for i in result: print(i,type(i))