day10 作业

写一个函数将一个指定的列表中的元素逆序(如[1, 2, 3] -> [3, 2, 1])(注意:不要使 表自带的逆序函数)

ef my_count(list1:list):
    print(list1[::-1])

写一个函数,提取出字符串中所有奇数位上的字

def my_str(str1:str):
    index =  1
    new_str =''
    for index in len(str1):
        new_str.append(str1[index])
        index += 2
    return new_str


写一个匿名函数,判断指定的年是否是闰

leap = lambda x :x%4==0 and x%100!=0
print(leap(1046))
print(2002)


使用递归打印:

n = 3
的时候

@
@ @ @
@ @ @ @ @

n = 4
的时候:

@
@ @ @
@ @ @ @ @
@ @ @ @ @ @ @

count = []
def num(n):
    if n == 1:
        return count.append(1)
    count.append(n)
    num(n-1)
print(num(5))
for item in count[-1::-1]:
    print('@'*item)
@
@@
@@@
@@@@
@@@@@


写函数, 利用递归获取斐波那契数列中的第 10个数,并将该值返回给调用者。


def recur_fibo(n):
    """递归函数
    输出斐波那契数列"""
    if n <= 1:
        return n
    else:
        return (recur_fibo(n - 1) + recur_fibo(n - 2))
print(recur_fibo(10))

写一个函数,获取列表中的成绩的平均值,和最高分

def my_num(list1:list):
    for x in list1:
        my_max = max(list1)
        my_sum=sum(list1)/len(list1)
    return   my_sum,my_max

写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新的列表返回给调用者

def check_2(s):
    a = []
    for x in range(len(s)):
    
        if x%2!= 0:
            a.append(s[x])
    return a
print(check_2((1,23,42,13,1)))
    


实现属于自己的字典update方法:用一个字典去更新另一个字典的元素(不能使用自带的update方法)
yt_update(字典1, 字典2)

  1. 实现属于自己的items方法:将字典转换成列表,字典中的键值对转换成元祖。(不能使用items方法)
    yt_items(字典)
    例如:{'a': 1, 'b': 2, 'c': 3} - --> [('a', 1), ('b', 2), ('c', 3)]
def change_key_value(dict1:dict):

    for key in dict1.copy():
        # 通过key拿到值
        value = dict1[key]
        # 删除原来的键值对
        del dict1[key]
        # 将值作为key,键作为value,添加键值对
        dict1[value] = key

    
 

dict11 = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
change_key_value(dict11)
print(dict11)

你可能感兴趣的:(day10 作业)