1.写一个函数将一个指定的列表中的元素逆序(例如[1, 2, 3] -> [3, 2, 1])(注意:不要使用列表自带的逆序函数)
def reverse(list1:list):
list2=[]
for item in list1[::-1]:
list2.append(item)
return list2
print(reverse([1,2,3,4,5]))
输出
[5, 4, 3, 2, 1]
2.写一个函数,提取出字符串中所有奇数位上的字符
def odd(str1:str):
list2=[]
for char in str1[1::2]:
list2.append(char)
return list2
print(odd('0123456789'))
输出
['1', '3', '5', '7', '9']
3.写一个匿名函数,判断指定的年是否是闰年
isleap=lambda year:year%4==0 and year%100!=0
print(isleap(2004))
输出
True
4.使用递归打印:
n = 3的时候
@
@@
@@@
n = 4的时候:
@
@@
@@@
@@@@
def func1(n):
if n==0:
print('')
return
func1(n-1)
print('@'*n)
return ''
func1(5)
输出
@
@@
@@@
@@@@
@@@@@
5.写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def two_list(list1:list):
length=len(list1)
if length>2:
return list1[0:2]
return list1
print(two_list([1,2,3,4,5,6]))
输出
[1, 2]
6.写函数,利用递归获取斐波那契数列中的第 10个数,并将该值返回给调用者。
def feibo(n):
if n==1 or n==2:
return 1
return feibo(n-1)+feibo(n-2)
print(feibo(10))
输出
55
7.写一个函数,获取列表中的成绩的平均值,和最高分
def aver_max(list1:list):
list1.sort()
sum1=sum(list1)
return list1[-1],sum1/len(list1)
print(aver_max([1,2,3,4,5,6,7]))
输出
(7, 4.0)
8.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新的列表返回给调用者
def odd1(sequence):
list1=[]
for item in sequence[1::2]:
list1.append(item)
return list1
print(odd1([0,1,2,3,4,5,6,7,8,9]))
print(odd1((0,1,2,3,4,5,6,7,8,9)))
输出
[1, 3, 5, 7, 9]
[1, 3, 5, 7, 9]
网友评论