1.编写一个函数,求1+2+3+...+N
def my_sum(n:int):
sum1 = 0
for i in range(n+1):
sum1 += i
return sum1
a = my_sum(10)
print(a)
2.编写一个函数,求多个数中的最大值
list1 = [1, 8, 3, 4, 5, 2, 9, 6, 7]
def max_num(list1:list):
max = list1[0]
for i in range(1,len(list1)):
if list1[i] > max:
max =list1[i]
return max
a = max_num(list1)
print('最大的数为:', a)
3.编写一个函数,实现摇色子的功能,打印n个骰子的点数和
import random
def dice(n:int):
sum1 = 0
dice_num = 0
for i in range(n):
dice_num = random.randint(1,6)
print('第%d个骰子的点数为:%d' % (i, dice_num))
sum1 += dice_num
return sum1
n = int(input('请输入骰子的数量:'))
a = dice(n)
print('%d个骰子的点数和为:%d' % (n,a))
4.编写一个函数,交换指定字典的key和value
def change(dict1:dict):
dict2 = {}
for key,val in dict1.items():
dict2[val]=key
return dict2
dict1 = {'a':1, 'b':2, 'c':3}
dict2 = change(dict1)
print(dict2)
5.编写一个函数,三个数中的最大值
list1 = []
for i in range(3):
num = int(input('请输入第%d个数:' % i))
list1.append(num)
def pick_max(list1:list):
max = list1[0]
for i in range(1,len(list1)):
if list1[i] > max:
max =list1[i]
return max
a = pick_max(list1)
print('最大的数为:', a)
6.编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来
str1 ='12a&bc12d'
def pick_letter(str1:str):
str2 = ''
for i in range(len(str1)):
if str1[i].isalpha():
str2 += str1[i]
return str2
str2 = pick_letter(str1)
print(str2)
7.编写一个函数,求多个数的平均值
list1 = [1, 8, 3, 4, 5, 2, 9, 6, 7]
def avg_num(list1:list):
sum1 = 0
for i in range(len(list1)):
sum1 += list1[i]
sum1 /= (i+1)
return sum1
a = avg_num(list1)
print('平均值为:', a)
8.编写一个函数,默认求10的阶层,也可以求其他数的阶层
def factorial(n=10):
if not n:
pro = 1
else:
pro = 1
for i in range(1,n+1):
pro *= i
return pro
n = input('请输入阶乘数(默认为10):')
if n == '':
fac = factorial()
else:
fac = factorial(int(n))
print('阶乘为:', fac)
9.编写一个函数,可以对多个数进行不同的运算
def operation(str1:str, *num1):
fist_num = int(num1[0])
lenth = len(num1)
if str1 == '+':
for i in range(1,lenth):
fist_num += num1[i]
return fist_num
elif str1 == '-':
for i in range(1,lenth):
fist_num -= num1[i]
return fist_num
elif str1 == '*':
for i in range(1,lenth):
fist_num *= num1[i]
return fist_num
elif str1 == '/':
for i in range(1,lenth):
fist_num /= num1[i]
return fist_num
elif str1 == '//':
for i in range(1,lenth):
fist_num //= num1[i]
return fist_num
elif str1 == '%':
for i in range(1,lenth):
fist_num %= num1[i]
return fist_num
else:
print('无该符号的运算')
op = operation('-', 10,9)
print('结果为:', op)
网友评论