作业1
过滤掉该列表names = [“jerry”, “hansen”, “Lucy”, “Wendy”, “Tom”, “Bob”]
长度小于或等于3的字符串列表,并将剩下的转换成大写字母。

�

  1. names = ["jerry", "hansen", "Lucy", "Wendy", "Tom", "Bob"]
  2. def filterName(li):
  3. for i in li:
  4. if len(i) > 3:
  5. print(i.upper())
  6. filterName(names)

作业2

求(x,y),其中x是0-5之间的偶数,y是0-5之间的奇数组成的元组列表。
效果如下:[(0, 1), (0, 3), (2, 1), (2, 3), (4, 1), (4, 3)]

�

  1. #方式一 普通实现
  2. def randTuple():
  3. li = []
  4. for i in range(0, 5):
  5. if i % 2 == 0:
  6. li.append(i)
  7. return li
  8. def randTuple2():
  9. li = []
  10. for i in range(0, 5):
  11. if i % 2 != 0:
  12. li.append(i)
  13. return li
  14. def infer(li1, li2):
  15. li =[]
  16. for i in li1:
  17. for j in li2:
  18. tup = (i, j)
  19. print(tup, end=' ')
  20. li.append(tup)
  21. return li
  22. infer(randTuple(), randTuple2())
  23. # 方式二 装饰器实现
  24. def infer2(func1):
  25. def assem():
  26. li1 = []
  27. li2 = []
  28. for i in range(0, 5):
  29. if i % 2 == 0:
  30. li1.append(i)
  31. else:
  32. li2.append(i)
  33. func1(li1,li2)
  34. return assem()
  35. @infer2
  36. def infer3(li1, li2):
  37. li3 = []
  38. for i in li1:
  39. for j in li2:
  40. tup = (i, j)
  41. # print(tup, end=' ')
  42. li3.append(tup)
  43. print(li3)

作业3
实现学习调研系统,效果如下。
1.当输入为yes时,给出选项
2.当选项为3,则退出系统
3.当选项不在选择范围内, 则提示重新选择
4.当用户没有学习,则输出提示并退出系统。
5.输入除yes / no其它值时,则提示输入有误

�

  1. while True:
  2. study = input('今天你学习了吗?')
  3. if study.upper() == 'YES':
  4. print('1.python')
  5. print('2.高数')
  6. print('3.退出')
  7. while True:
  8. choose = input('请输入选项:')
  9. if '1' == choose or '2' == choose:
  10. print('very good')
  11. break
  12. elif '3' == choose:
  13. print('退出成功')
  14. break
  15. else:
  16. print('你输入的有误!')
  17. break
  18. elif study.upper() == 'NO':
  19. print('退出成功')
  20. break
  21. else:
  22. if study.upper() != 'NO' and study.upper() != 'YES':
  23. print('你输入的有误!,请重新输入')

作业三

li =[ ‘Bob’, ‘JOHN’, ‘alice’, ‘bob’, ‘ALICE’, ‘James’, ‘Bob’,’JAMES’,’jAMeS’ ]
该列表很紊乱,实现去重, 以及将名字格式统一成首字母大写(str.capitalize())

  1. li =[ 'Bob', 'JOHN', 'alice', 'bob', 'ALICE', 'James', 'Bob','JAMES','jAMeS' ]
  2. def dist(li):
  3. se = set()
  4. for i in li:
  5. se.add(i.capitalize())
  6. print(se)
  7. dist(li)

�