2018-08-29-函数作业

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

def sum1(N:int):
    sum1=0
    for x in range(1,N+1):
        sum1+=x
    return sum1
print(sum1(10))---------------55

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

def max_number(*num):
    y=num[0]
    for x in num:
        if x>y:
            y=x
    return y
print(max_number(12,1,14,15,23,34,43))-------43

3. 编写⼀一个函数,实现摇⾊色⼦子的功能,打印n个⾊色⼦子的点数和

def sum_random(n):
    import random
    sum2=0
    for x in range(n):
        number=random.randint(1,6)
        print(number)
        sum2+=number
    return sum2
print(sum_random(20))

结果:
3 4 6 6 5 2 5 5 2 4 3 4 1 2 1 2 6 6 4 1 
72

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

  • 例如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
def exchange(dict1:dict):
    dict2={}
    for key in dict1:
        key_change=dict1[key]
        dict2[key_change]=key
    return dict2
print(exchange({'a':1, 'b':2, 'c':3}))-----{1: 'a', 2: 'b', 3: 'c'}

5. 编写一个函数,三个数中的最大值

def max_3(num1,num2,num3):
    max_number=num1
    num=[num1,num2,num3]
    for number in num:
        if number>max_number:
            max_number=number
    return max_number
print(max_3(13,24,15))--------24

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

  • 例如:'12a&bc12d--' ---> 打印'abcd
def letter(str1:str):
    str2=''
    for x in str1[:]:
        if x.isalpha():
            str2+=x
    return str2
print(letter('asjdnidjae12421dfcas'))--------asjdnidjaedfcas

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

def aver(*num):
    sum3=0
    for number in num:
        sum3+=number
    aver=sum3/len(num)
    return  aver
print(aver(12,13,14,15,16,17,18))--------15.0

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

def factorial(n=10):
    ji=1
    for x in range(1,n+1):
        ji*=x
    return ji
print(factorial(7))---------5040
print(factorial())-----------3628800

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

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

def operation(oper='+',*num):
    result=num[0]
    for index in range(1,len(num)):
        if oper=='+':
            result+=num[index]
        elif oper=='-':
            result-=num[index]
        elif oper=='*':
            result*=num[index]
        elif oper=='/':
            result/=num[index]
        elif oper=='//':
            result//=num[index]
        elif oper=='%':
            result%=num[index]
        elif oper=='**':
            result**=num[index]
    return result
print(operation('*',2,4,5,6))--------240

你可能感兴趣的:(2018-08-29-函数作业)