1. 编写一个函数,求1+2+3+...+N
def jie_cheng(num):
sum = 1
for x in range(1, num+1):
sum *= x
return sum
sum1= jie_cheng(9)
print(sum1)
# 362880
2. 编写一个函数,求多个数中的最大值
def max_num(*num):
list = []
list.append(num)
num1 = 0
for x in list[0]:
if x > num1:
num1 = x
return num1
num2 = max_num(12,43,321,215)
print(num2) # 321
3. 编写一个函数,实现摇骰子的功能,打印n个骰子的点数和
import random
def sum1(n):
sum2=0
for x in range(n):
y = random.randint(1,7)
sum2+=y
return sum2
print(sum1(8))
33 14 31
4. 编写一个函数,交换指定字典的key和value。
# 如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
dict1={'a': 1, 'b': 2, 'c': 3}
def dict_x(dict):
num=0
dict2 = {}
key = []
value=[]
for x in dict:
key.append(dict[x])
value.append(x)
num+=1
for x in range(num):
dict2[key[x]]=value[x]
print(dict2)
dict_x(dict1)
5. 编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来
# 如:'12a&bc12d--' ---> 打印'abcd'
str1 = '12a&bc12d--'
def get_letter():
str2 = ''
for x in str1:
if 'a' <= x <= 'z':
str2 += x
return str2
print(get_letter())
6. 写一个函数,求多个数的平均值
def mean(*num):
list1 = []
num1 = 0
for x in num:
list1.append(x)
for x in list1:
num1 += x
mean = num1/len(list1)
return mean
print(mean(1,2,3,4,5,10))
7. 写一个函数,默认求10的阶层,也可以求其他数的阶层
def jx_num(a=10):
x = 1
for y in range(1,a+1):
x *=y
return x
print(jx_num())
8. 写一个函数,可以对多个数进行不同的运算
如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果 operation('-', 10, 9) ---> 求 10-9的结果 operation('', 2, 4, 8, 10) ---> 求 24810的结构
# def all_num(a,*num):
# if a == '+':
# sum1 = 0
# for x in num:
# sum1 += x
# elif a == '-':
# list1=[]
# for x in num:
# list1.append(x)
# sum1 = list[0] - list[1]
# elif a == '*':
# list1 = []
# for x in num:
# list1.append(x)
# for x in list[:]:
# if
9.写一个函数,求指定列表中,指定的元素的个数
def find_x(a,b):
count = 0
for x in a[:]:
if x == b:
count += 1
return count
print(find_x([1,2,3,3,3,4,2,1], 3))
10.写一个函数,获取指定列表中指定元素对应的下标(如果有多个,一起返回)
def find_x(a,b):
count = 0
list1 = []
for x in a[:]:
if x == b:
list1.append(count)
count += 1
return list1
print(find_x([1,2,3,3,3,4,2,1], 2))
网友评论