美文网首页
Day-09 练习

Day-09 练习

作者: 水果坚果燕麦片 | 来源:发表于2019-01-04 17:59 被阅读0次
    1. 编写一个函数,求1+2+3+...+N
    def sigama(num : int):
        sum = 0
        for N in range(num + 1):
            sum += N
        print('1到%d累加的和為%d' %(num, sum))
    
    num_input = int(input('輸入一個整數N,計算從1到N的累加的和'))
    sigama(num_input)
    
    结果如下:
    輸入一個整數N,計算從1到N的累加的和10
    1到10累加的和為55
    
    1. 编写一个函数,求多个数中的最大值
    def find_max(nums):
        print(max(nums))
    
    list = []
    num_input = input()
    while num_input !='end':
        list.append(num_input)
        num_input = input()
    find_max(list)
    
    1. 编写一个函数,实现摇色字的功能,打印n个色子的点数和
    import random
    def sum_points(N):
        sum = 0
        for items in range(N):
            points = random.randint(1,6)
            sum += points
            print(points)
        print('点数和为:', sum)
    N = int(input('输入一个正整数N,累加N个色子点数的和'))
    sum_points(N)
    结果如下:
    
    输入一个正整数N,累加N个色子点数的和3
    2
    2
    6
    点数和为: 10
    
    1. 编写一个函数,交换指定字典的key和value。
      例如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
    dict1 = {'a': 1, 'b': 2, 'c': 3}
    def swap_dict(dict):
        dict = {value : key for key, value in dict1.items()}
        print(dict)
    swap_dict(dict1)
    
    结果如下:
    {1: 'a', 2: 'b', 3: 'c'}
    
    1. 编写一个函数,三个数中的最大值
    令 N =3 即可
    def find_max(nums):
        print(max(nums)
    
    list = []
    num_input = input()
    while num_input !='end':
        list.append(num_input)
        num_input = input()
    find_max(list)
    ----------------------
    def find_max_three(a,b,c):
        max = a
        if max < b:
            max = b
        if c > max:
            max = c
        print(max)
    
    find_max_three(6,5,10)
    
    结果如下:
    10
    
    1. 编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来
      例如:'12a&bc12d--' ---> 打印'abcd'
    def take_alpha(str =''):
        str1 = ''
        for items in str:
            if 'a' <= items <= 'z' or 'A' <= items <= 'Z':
                str1 += items
        print(str1)
    
    take_alpha('12a&bc12d--')
    
    结果如下:
    abcd
    
    1. 写一个函数,求多个数的平均值
    def accumulate_ave(*args, **kwargs):
        sum = 0;count = 0
        for items in args:
            sum += items
            count += 1
        for key in kwargs:
            sum += kwargs[key]
            count += 1
        print(sum/count)
    accumulate_ave(1, 2, 3, a=4)
    结果如下:
    2.5
    
    1. 写一个函数,默认求10的阶层,也可以求其他数的阶层
    def factorial(N = 10):
        plus = 1
        for x in range(1,N+1):
            plus *= x
        print(plus)
    
    factorial()
    factorial(5)
    结果如下:
    3628800
    120
    
    
    1. 写一个函数,可以对多个数进的不同的运算
      例如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果
      operation('-', 10, 9) ---> 求 10-9的结果
      operation('', 2, 4, 8, 10) ---> 求 24810的结果
    def operation(symbol,*nums):
        if symbol == "+":
            sum =0
            for items in nums:
                sum += items
        if symbol == "-":
            sum = 2 * nums[0]
            for items in nums:
                sum -= items
        if symbol == "*":
            sum = 1
            for items in nums:
                sum *= items
        print('结果为',sum)
    operation('+', 1, 2, 3)
    operation('-', 10, 9)
    operation('*', 2, 4, 8, 10)
    
    结果如下:
    结果为 6
    结果为 1
    结果为 640
    

    相关文章

      网友评论

          本文标题:Day-09 练习

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