#习题1:有两个列表,获取其中内容相同的元素列表,l1中有,l2中没有的元素列表,内容都不同的列表
# l1 = [11,22,33]
# l2 = [22,33,44]
# a = []
# for m in l1:
# if m in l2:
# a.append(m)
# print('l1和l2中都有的元素列表:',a)
# b = []
# for m in l1:
# if m not in l2:
# b.append(m)
# print('l1中有,l2中没有的元素列表:',b)
# for m in l2:
# if m not in l1:
# b.append(m)
# print('l1和l2中元素不同的列表:',b)#习题2,有1,2,3,4,5,6,7,8,8个数字,能组成多少个互不相同且无重复数字的两位数
# li = [1,2,3,4,5,6,7,8,8]
# for i in li:
# if li.count(i) > 1:
# li.remove(i)
# print(li)
# all = []
# for i in li:
# for j in li:
# k = str(i) + str(j)
# if i != j:
# all.append(int(k))
# print(all)
# print(len(all))#习题3,99乘法表
# for i in range(1,10):
# s = ''
# for j in range(1,i+1):
# print(str(j) + 'x' + str(i) + '=' + str(i*j),end='\t')
# print()#习题4,公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡、母鸡、小鸡都必须要有,问公鸡、母鸡、小鸡各多少只刚好凑足100文钱。
# gong = 100 // 5
# muji = 100 // 3
# xiaoji = 300
# for i in range(1,gong+1):
# for j in range(1,muji+1):
# for k in range(3,301,3):
# price = i*5 + j*3 + k // 3
# count = i+j+k
# if price == 100 and count == 100 :
# print('公鸡:',i,'母鸡:',j,'小鸡:',k)#习题5,代码实现使用下划线将列表中每一个元素拼接成字符串
# li = ['alex','eric',123]
# for i in range(0,len(li)):
# li[i] = str(li[i])
# s = '_'.join(li)
# print(s)# l1 = []
# for i in li:
# l1.append('_'.join(i))
# print(l1)#习题6,查找列表中元素,移除每个元素的空格,并查找以a或A开头,以c结尾的所有元素
# li = ["alec"," aric","Alex","Tony","rain"]
# tu = ("alec"," aric","Alex","Tony","rain",)
# dic = {'k1':'alec','k2':' aric','k3':'Alex','k4':'Tony'}# for k,i in dic.items():
# i = i.strip()
# if (i.startswith('a') or i.startswith('A')) and i.endswith('c'):
# print(k,i)#习题7,请找出列表中任意两个元素相加能够等于9的元素集合
# nums = [2,7,11,15,1,8,7]
# li =[]
# for i in range(0,len(nums)):
# for j in range(i+1,len(nums)):
# if nums[i] + nums[j] == 9:
# # l =[i,j]
# li.append((i,j))
# print(li)#习题8 列表操作
# li = ['alex','eric','rain']
# print('1.列表长度:',len(li))
# li.append('seven')
# print('2.new list', li)
# li.insert(0,'Tony')
# print('3.new list', li)
# li[1] = 'Kelly'
# print('4.new list', li)
# l1 = li.copy()
# li.remove('eric')
# print('5.new list', li)
# v = li.pop(1)
# print('5.del value:', v)
# li.pop(2)
# print('6.new list', li)
# del l1[1:4]
# print(l1)
# l1.reverse()
# print(l1)#习题9,通过for循环创建301条数据,数据类型不限,如:
# alex-1 alex1@live.com pwd1
# alex-2 alex2@live.com pwd2
# alex-3 alex3@live.com pwd3
#提示用户,请输入要查看的页码,当用户输入指定页码,则显示指定数据。每页显示10条数据,用户输入页码是非十进制数字,则提示输入格式错误
# li = []
# for i in range(1,302):
# di = {'name':'alex-'+str(i),'email':'alex'+str(i)+'@live.com','pwd':'pwd'+str(i)}
# li.append(di)
# while True:
# page = input('请输入需要查看的页码:')
# if not page.isdecimal():
# print('输入格式错误,请输入十进制数字')
# elif int(page) > 31:
# print('页数超出总数')
# else:
# page = int(page)
# start = page*10-10
# end = page*10
# for n in li[start:end]:
# print(n)# while True:
# page = input('请输入需要查看的页码:')
# if not page.isdecimal():
# print('输入格式错误,请输入十进制数字')
# elif int(page) > 31:
# print('页数超出总数')
# else:
# page = int(page)
# break
# if page*10 < len(li):
# for n in range(page*10-10,page*10):
# print(li[page*10-10:page*10])
# else:
# for m in range(page*10-10,len(li)):
# print(li[m])