美文网首页
函数作业02

函数作业02

作者: 蘑菇plus | 来源:发表于2018-07-25 20:57 被阅读0次

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

    def reverse_list(list1):
        for index in range(len(list1)):
            item=list1.pop(index)
            list1.insert(0,item)
    old_list=[1,2,8]
    reverse_list(old_list)
    print(old_list))
    结果:[8, 2, 1]
    

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

    def my_str(str1):
        list1=''
        for i in range(len(str1)):
            if i%2==0:
                list1 += str1[i]
            else:
                continue
        print(list1)
    s='huffy'
    my_str(s)
    结果:hfy
    

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

    isrunnian = lambda x: bool((x%4==0 and x%100!=0)or x%400==0)
    print(isrunnian(2003))
    结果:False
    

    4.使⽤用递归打印:
    n = 3的时候
    @
    @@@
    @@@@@
    n = 4的时候:
    @
    @@@
    @@@@@
    @@@@@@@

    def prin_star(n=3):
        if n == 1:
            s1='*'
            print(s1.center(7))
            return
        prin_star(n - 1)
        s2='*'*(2*n-1)
        print(s2.center(7))
    prin_star(4)
    结果:
       *   
      ***  
     ***** 
    *******
    
    def my_print(n,m=0):
        if n==0:
            return None
        my_print(n-1,m+1)
        print(' '*m,end='')
        print('*'*(2*n-1))
    my_print(4)
    结果:
       *
      ***
     *****
    *******
    

    5.写函数,检查传⼊入列列表的⻓长度,如果⼤大于2,那么仅保留留前两个⻓长度的内容,并将新内容返回给调⽤用者。

    def my_check(list1):
        list2=[]
        if len(list1)>2:
            for i in range(0,len(list1)):
                list2.append(list1[i])
                if i==1:
                    break
        return list2
    list3=['a','f',7,9]
    print(my_check(list3))
    结果:['a', 'f']
    

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

    def fb(n):
        if n == 1 or n == 2:
            return 1
        return fb(n-1)+fb(n-2)
    
    print(fb(9))
    结果:34
    

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

    def get_num(list1):
        sum1=0
        count=0
        max1=0
        for i in range(0,len(list1)):
            sum1+=list1[i]
            count+=1
            if list1[i]>max1:
                max1=list1[i]
        average=sum1/count
        return max1,average
    list2=[2,5,3,8]
    print(get_num(list2))
    结果:
    (8, 4.5)
    

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

    def my_list(list1):
        list2=[]
        for i in range(0,len(list1),2):
            list2.append(list1[i])
        return list2
    list3=['q','d',6,9,'r']
    print(my_list(list3))
    结果:
    ['q', 6, 'r']
    

    相关文章

      网友评论

          本文标题:函数作业02

          本文链接:https://www.haomeiwen.com/subject/osjmmftx.html