day9-作业

2018-10-10  本文已影响0人  魅影_0d2e

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

def sum1(N):
    sum2 = 0
    for x in range(1, N+1):
        N += 1
        sum2 +=x
    print(sum2)
sum1(20)
# 210

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

def max1(*number):
    max2 = number[0]
    for x in number:
        if max2 > x:
           break
        else:
            max2 = x
    print('max:', max2)
max1(10, 20, 50, 80)
#  max: 80

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

import random
def sum3(n):
    sum4 = 0
    for index in range(0, n):
        x = random.randint(1, 7)
        sum4 += x
    print('骰子的点数和为:', sum4)
sum3(6)
#  骰子的点数和为: 23

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

如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}

def exchange1(dict1):
    for key in dict1.copy():
        # 通过key拿到值
        value = dict1[key]
        # 删除原来的键值对
        del dict1[key]
        # 将值作为key,键作为value,添加键值对
        dict1[value] = key
dict2 = {'a':1, 'b':2, 'c':3}
exchange1(dict2)
print(dict2)
# 交换后的字典为: {1: 'a', 2: 'b', 3: 'c'}

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

如:'12a&bc12d--' ---> 打印'abcd'

def zi_mu(str1):
    str2 = ''
    for index in str1:
        if index.isalpha():
        # if 'a' <= index <= 'z' or 'A' < index < 'Z':
            str2 += index
    print(str2)
zi_mu('12a&bc12d--')
# abcd

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

def average(*number):
    sum1 = 0
    n = 0
    for x in number:
        sum1 += x
        n += 1
        ave1 = (sum1/n)
    print(ave1)
average(1,2,3,4,5,6,7,8,9)
# 5.0

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

def jie_ceng(n=10):
    sum1 = 1
    for x in range(1, n+1):
        sum1 *= x
    print(sum1)
jie_ceng()
#  362880

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

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

def operation(fu_hao, *n):
    if fu_hao == '+':
        sum1 = 0
        for x in n:
            sum1 += x
        print(sum1)
    if fu_hao == '-':
        sum2 = n[0]
        for x in range(1, len(n)):
            sum2 -= n[x]
        print(sum2)
    if fu_hao == '*':
        sum3 = 1
        for x in n:
            sum3 *= x
        print(sum3)
operation('+', 1, 2, 3)   #  6
operation('-', 10, 9) #  1

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

def num1(list1,n):
    x = 0
    for i in list1:
        if i == n:
            x += 1
    return x
print(num1([1,2,3,4,5,4,3,4,3,4],3))
# 3

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

def index(list1,n):
    list2 = []
    for i in range(len(list1)):
        if n == list1[i]:
            list2.append(i)
    return list2
print(index([1,2,3,4,5,2,3,2,3,5],3))
# [2, 6, 8]
上一篇下一篇

猜你喜欢

热点阅读