- 编写一个函数,求1+2+3+...+N
def my_sum(N):
"""求1+2+3+...+N"""
my_sum1 = 0
for n in range(N+1):
my_sum1 += n
print(my_sum1)
my_sum(100)
- 编写一个函数,求多个数中的最大值
def my_max(my_list):
"""求1+2+3+...+N"""
def my_max(my_list):
"""求1+2+3+...+N"""
my_max1 = 0
for n in my_list:
if n > my_max1:
my_max1 = n
print(my_max1)
list1 = []
my_num = float(input('请输入想当老大的数字:'))
list1.append(my_num)
while my_num :
my_num = float(input('请输入想当老大的数字:'))
list1.append(my_num)
my_max(list1)
- 编写一个函数,实现摇色子的功能,打印n个色子的点数和
import random
def roll_dice(n):
"""打印n个色子的点数和"""
sum1 = 0
for one_dice in range(n):
one_dice = random.randint(1, 6)
sum1 += one_dice
print(one_dice, end=' ')
print('\n%d个色子的和为%d' % (n, sum1))
num1 = int(input('请输入色子的个数:'))
roll_dice(num1)
- 编写一个函数,交换指定字典的key和value。
例如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
def exchange(dict_exchange):
"""交换指定字典的key和value"""
list_exchange = []
my_dict = {}
dict_exchange.keys()
dict_exchange.values()
for item in dict_exchange.keys():
list_exchange.append(item)
for item1 in dict_exchange.values():
list_exchange.append(item1)
my_dict[list_exchange[len(dict_exchange)]] = list_exchange[0]
my_dict[list_exchange[len(dict_exchange)+1]] = list_exchange[1]
my_dict[list_exchange[len(dict_exchange)]+2] = list_exchange[2]
print(my_dict)
dict_exchange = {'a':1, 'b':2, 'c':3}
exchange(dict_exchange)
结论:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe "D:/python工程/个人/day8容器类型2/容器/08 - 作业.py"
{1: 'a', 2: 'b', 3: 'c'}
Process finished with exit code 0
- 编写一个函数,三个数中的最大值
def my_max(num1,num2,num3):
"""三个数中的最大值"""
if num1 > num2:
if num1 > num3:
print('最大值为%d'%num1)
else:
print('最大值为%d' % num3)
else:
if num2 > num3:
print('最大值为%d'%num2)
else:
print('最大值为%d' % num3)
my_max(20,10,40)
- 编写一个函数,提取指定字符串串中的所有的字母,然后拼接在一起后打印出来吗。例如:'12a&bc12d--' ---> 打印'abcd'
def spell_the_letters(the_letters):
"""提取指定字符串串中的所有的字母,然后拼接在一起后打印出来"""
the_letters1 = ''
for item in the_letters:
if 'A'< item < 'Z' or 'a'< item < 'z':
the_letters1 += item
print(the_letters1)
the_letters = input('请输入一串字符串:')
spell_the_letters(the_letters)
- 写一个函数,求多个数的平均值
def average_value(my_list):
"""求多个数的平均值"""
my_sum = 0
for item in my_list:
my_sum += item
print(my_sum /len(my_list))
my_num = int(input('请输入数的个数:'))
list_averge = []
while my_num:
my_input = float(input('请输入数据:'))
list_averge.append(my_input)
my_num -= 1
average_value(list_averge)
- 写一个函数,默认求10的阶层,也可以求其他数的阶层
def factorial(n):
"""默认求10的阶层,也可以求其他数的阶层"""
mul = 1
for item in range(1, 11):
mul *= item
print('10的阶乘= %d' % mul)
if n != 10 :
for item1 in range(1,n+1):
mul *= item1
print('%d的阶乘= %d'%(n,mul))
n = int(input('求n的阶乘,默认为10:'))
factorial(n)
- 写一个函数,可以对多个数进行不同的运算
例如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果operation('-', 10, 9) ---> 求 10-9的结果operation('', 2, 4, 8, 10) ---> 求 24810的结构
def operation(symbol, *num1):
"""求 2*4*8*10的结构"""
mul = 1
sum1 = 0
if symbol == '*':
for item in num1:
mul *= item
print(*num1, sep='*')
print(mul)
if symbol == '+':
for item1 in num1:
sum1 += item1
print(*num1,sep='+')
print(sum1)
if symbol == '-':
for item1 in num1:
sum1 -= item1
print(*num1,sep='-')
print(sum1)
operation('*', 2, 4, 8, 10)
结论:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe "D:/python工程/个人/day8容器类型2/容器/08 - 作业.py"
2*4*8*10
640
Process finished with exit code 0
def operation(my_list,count):
"""求 2*4*8*10的结构"""
mul = 1
str_operation = ''
for index in range(1, count+1):
if index < count:
str_operation += str(my_list[index])
str_operation += str(my_list[0])
elif index == count:
str_operation += str(my_list[index])
print(str_operation)
my_list = ['*']
count_num = int(input('请输入数的个数:'))
count_num1 = count_num
while count_num:
my_num = float(input('请输入一个数'))
count_num -= 1
my_list.append(my_num)
operation(my_list,count_num1)
结论:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe "D:/python工程/个人/day8容器类型2/容器/08 - 作业.py"
请输入数的个数:5
请输入一个数10
请输入一个数20
请输入一个数30
请输入一个数40
请输入一个数50
10.0*20.0*30.0*40.0*50.0
Process finished with exit code 0