美文网首页
day9-函数基础-作业

day9-函数基础-作业

作者: _桑心人 | 来源:发表于2018-10-10 19:30 被阅读0次

    1.编写一个函数,求1+2+3+...+N

    代码如下

    def my_sum1(n):
        sum1 = 0
        for x in range(1, n+1):
            sum1 += x
        return sum1
    
    
    print(my_sum1(100))
    

    运行结果

    5050
    

    2. 编写一个函数,求多个数中的最大值

    代码如下

    def max1(*nums):
        n = 0
        for x in range(len(nums)):
           if n < nums[x]:
               n = nums[x]
        return n
    
    
    print('最大值为:', max1(1, 20, 56, 65))
    

    运行结果

    最大值为: 65
    

    3.编写一个函数,实现摇骰子的功能,打印n个骰子的点数和####代码如下

    import random
    
    
    def bask(n):
        sum1 = 0
        x = 0
        while n:
            x = random.randint(1, 6) #随机数生成
            print(x)
            sum1 += x
            n -= 1
        return sum1
    
    
    n = int(input('请输入你骰子的个数:'))
    print('骰子点数总和为:',bask(n))
    

    运行结果

    请输入你骰子的个数:3
    4
    4
    3
    骰子点数总和为: 11
    

    4.编写一个函数,交换指定字典的key和value

    代码如下

    def change(dict1):
        list1 = list(dict1)
        for list2 in list1:
            value = dict1[list2]
            del dict1[list2]
            dict1[value] = list2
        return dict1
    
    
    dict1 = {'name': '小明', 'age': 45, 'tel': 16654556}
    print(change(dict1))
    

    运行结果

    {'小明': 'name', 45: 'age', 16654556: 'tel'}
    

    5.编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来

    代码如下

    def letter(n):
        str2 = ''
        for x in n:
            if 'a' <= x <='z' or 'A' <= x <= 'Z':
                str2 += x
        return str2
    
    
    str1 = input('请输入一串字符串:')
    print('其中字母为:', letter(str1))
    

    运行结果

    请输入一串字符串:44sd5f6A6D
    其中字母为: sdfAD
    

    6.写一个函数,求多个数的平均值

    代码如下

    def Avg(*nums):
        sum1 = sum(nums)
        print(sum1)
        avg1 = sum1 / len(nums)
        return avg1
    
    
    print('平均值为:', Avg(52, 36, 10, 3))
    

    运行结果

    101
    平均值为: 25.25
    

    7.写一个函数,默认求10的阶层,也可以求其他数的阶层

    代码如下

    def jie_ceng(num=10):
        s = 1
        for x in range(1, num+1):
            s *= x
        return s
    
    
    print(jie_ceng())
    print(jie_ceng(5))
    

    运行结果

    3628800
    120
    

    8.写一个函数,可以对多个数进行不同的运算

    如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果 operation('-', 10, 9) ---> 求 10-9的结果
    operation('', 2, 4, 8, 10) ---> 求 24810的结构

    代码如下

    def operation(*num):
        list1 = list(num)
        if list1[0] == '+':
            sum1 = 0
            for index in range(1, len(list1)):
                sum1 += list1[index]
            return sum1
        elif list1[0] == '*':
            cheng = 1
            for index in range(1, len(list1)):
                cheng *= list1[index]
            return cheng
        elif list1[0] == '-':
            cha = list1[1]
            for index in range(2, len(list1)):
                cha -= list1[index]
            return cha
    
    
    print(operation('+', 5, 2, 3))
    print(operation('*', 5, 2, 3))
    print(operation('-', 5, 2, 3))
    

    运行结果

    10
    30
    0
    

    9.写一个函数,求指定列表中,指定的元素的个数

    代码如下

    def zhi_ding(list1, n):
        return list(list1).count(n)
    
    
    list1 = ['a', 'b', 2, 2, 'a', 'b']
    print('个数为:', zhi_ding(list1, 'a'))
    

    运行结果

    个数为: 2
    

    10.写一个函数,获取指定列表中指定元素对应的下标(如果有多个,一起返回)

    代码如下

    def xiao_biao(list1, n):
        list1 = list(list1)
        count = list1.count(n)
        list3 = []
        for index in range(len(list1)):
            if list1[index] == n:
                list3.append(index)
        return list3
    
    
    list1 = ['a', 'b', 2, 2, 'a', 'b']
    print('元素下标分别为:', xiao_biao(list1, 'a'))
    

    运行结果

    元素下标分别为: [0, 4]
    

    相关文章

      网友评论

          本文标题:day9-函数基础-作业

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