美文网首页
day9作业

day9作业

作者: liuperson | 来源:发表于2018-08-30 19:24 被阅读0次

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

    def exchange(list:list):
        for x in range(len(list)):
            item=list.pop(x)
            list.insert(0,item)
        return list
    print(exchange([1,2,3]))
    结果:
    [3, 2, 1]
    

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

    def get_(str):
      str1=str[1::2]
      return str1
    print(get_('012345678'))
    结果:
    1357
    

    3.编写函数,判断是否是闰年

    judge_year=lambda x:(x%400==0 or (x%4==0 and x%100!=0))
    print(judge_year(2018))
    结果:
    False
    

    4.使用递归打印

    def star(n):
        if n==1:
            print('*')
            return None
        star(n-1)
        print('*'*n)
    star(4)
    结果:
    *
    **
    ***
    ****
    

    5.编写函数,检查输入的字符串的长度,如果长度大于2,那么保留前两个字符的内容,并且返回给调用者

    def check_char(str):
        if len(str)>2:
            return str[:2]
    print(check_char('01234567'))
    结果:
    01
    

    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.写一个函数,获取列表中的平均值和最大值

    my_fun1=lambda list:(max(list),sum(list)/len(list))
    m1,m2=my_fun1([1,2,3,4,5])
    print(m1,m2)
    结果:
    5 3.0
    

    8.写函数,检查输入的元组或者是列表所有的奇数位,获得索引值,然后作为新的列表返回给调用者

    def get_new(list):
        list1=[]
        for x in range(len(list)):
            if x%2!=0:
               list1.append(x)
        return list1
    print(get_new([0,1,2,3,4,5,6]))
    结果:
    [1, 3, 5]
    

    9.写一个属于自己的数学模块,封装自己认为以后会常用的相关函数和变量,列表模块,封装自己认为以后常用的列表操作

    def sum(list):
        """
        求列表中所有数的和
        :param list:
        :return:
        """
        sum1=0
        for x in list:
            sum1+=x
        return sum1
    
    def jian_fa(list:list):
        """
        求多个数的差
        :param list:
        :return:
        """
        number=list[0]
        for x in list[1:]:
            number-=x
        return number
    
    def count(list,number):
        """
        求元素出现的次数
        :param list:
        :param number:
        :return:
        """
        sum=0
        for item in list:
            if item==number:
                sum+=1
        return sum
    
    e=2.7
    pi=3.14259
    
    def cricle_area(r):
        """
        求圆的面积
        :param r:
        :return:
        """
        return pi*(r**2)
    
    def perimeter(x,y):
        """
        求圆的周长
        :param x:
        :param y:
        :return:
        """
        return (x+y)*2
    from my_operation import sum
    print(sum([1,2,3,4,5]))
    结果:
    15
    from my_operation import count
    print(count([1,2,3,4],1))
    结果:
    1
    

    相关文章

      网友评论

          本文标题:day9作业

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