1.写一个匿名函数,判断指定的年是否是闰年
year = lambda y: True if y%4==0 and y%100!=0 or y%400==0 else False
print(year(2019))
2.写一个函数将一个指定的列表中的元素逆序
( 如[1, 2, 3] -> [3, 2, 1])(注意:不要使用列表自带的逆序函数)
# 法1
def reverse(list1):
list2 = []
for i in list1[-1::-1]:
list2.append(i)
print(list2)
reverse([1, 2, 3, 4, 5])
# 法2
def reverse(list1):
for i in range(len(list1)//2):
list1[i], list1[-i-1] = list1[-i-1], list1[i]
print(list1)
reverse([1, 2, 3, 4, 5])
3.写一个函数,获取指定列表中指定元素的下标
(如果指定元素有多个,将每个元素的下标都返回)
def index1(list1, item1):
count1 = 0
list2 = []
for index in range(len(list1)):
if item1 == list1[index]:
count1 += 1
list2.append(index)
if count1 == 0:
print(-1)
return list2
list3 = index1([1,3,4,1], 1)
print(list3)
4.写一个函数,能够将一个字典中的键值对添加到另外一个字典中(不使用字典自带的update方法)
def add1(dict1, dict2):
for key in dict1:
dict2[key] = dict1[key]
print(dict2)
add1({'a': 10, 'c': 20}, {'b': 100})
5.写一个函数,能够将指定字符串中的所有的小写字母转换成大写字母; 所有的大写字母转换成小写字母(不能使用字符串相关方法)
def change1(str1):
str2 = ''
for x in str1:
if 'a' <= x <= 'z':
str2 += chr(ord(x)-32)
elif 'A' <= x <= 'Z':
str2 += chr(ord(x)+32)
else:
str2 += x
print(str2)
change1('asaZZAAdsa2154')
6.实现一个属于自己的items方法,可以将自定的字典转换成列表。列表中的元素是小的列表,里面是key和value (不能使用字典的items方法)
例如:{'a':1, 'b':2} 转换成 [['a', 1], ['b', 2]]
def transform1(dict1):
list2 = []
for key in dict1:
list1 = []
list1.append(key)
list1.append(dict1[key])
list2.append(list1)
print(list2)
transform1({'a': 1, 'b': 2})
7.写一个函数,实现学生的添加功能
def stu1():
list1 = []
stu_num = 1
while True:
dict1 = {}
print('=========添加学生==========')
print('输入学生姓名', end=':')
name = input()
dict1['姓名'] = name
print('输入学生年龄', end=':')
age = int(input())
dict1['年龄'] = age
print('输入学生电话', end=':')
tel = int(input())
dict1['电话'] = tel
print('====添加成功')
new_stu = str(stu_num)
stu2 = new_stu.rjust(4, '0')
dict1['学号'] = stu2
stu_num += 1
list1.append(dict1)
for x in list1:
print(x)
print('==================')
print('1.继续')
print('2.返回')
print('请选择:', end='')
dec = int(input())
if dec == 1:
continue
elif dec == 2:
break
stu1()