1.编写一个函数,求!+2+3+...+N
n = int(input('请输入一个数字>>>'))
def my_sum(numbers):
sum1 = 0
for item in range(1, numbers+1):
sum1 += item
print(sum1)
my_sum(n)
结果
请输入一个数字>>>5
15
2.编写一个函数,求多个数中的最大值
def my_number(*numbers):
max = 0
for item in numbers:
if max < item:
max = item
print('最大值:',max)
my_number(15, 11, 65, 36, 24, 48, 91, 75, 46)
结果
最大值:91
3.编写一个函数,实现摇色子的功能,打印n个色子的点数和
n = int(input('摇色子的次数>>>'))
def my_sum(numbers):
sum1 = 0
for i in range(numbers):
import random
number = random.randint(1, 6)
print('色子的点数',number)
sum1 += number
print('色子点数的和',sum1)
my_sum(n)
结果
摇色子的次数>>>4
色子的点数 4
色子的点数 5
色子的点数 4
色子的点数 5
色子点数的和 18
4.编写一个函数, 交换指定字典的key和value。
例如:{'a' :1,'b':2,'c' :3} ---> {1:'a', 2: 'b', 3: 'c'}
dict1 = {'a': 1, 'b': 2, 'c': 3}
def my_dict(dict2):
print(dict2)
keys = dict2.values()
keys = list(keys)
print(keys)
values = dict2.keys()
values = list(values)
print(values)
dict3 = {}
count1 = 0
for key in keys:
count1 += 1
count2 = 0
for value in values:
count2 += 1
if count1 == count2:
dict3[key] = value
break
print(dict3)
my_dict(dict1)
结果
{'a': 1, 'b': 2, 'c': 3}
[1, 2, 3]
['a', 'b', 'c']
{1: 'a', 2: 'b', 3: 'c'}
5.编写一个函数,三个数中的最大值
def my_number(number1,number2,number3):
if number1>number2 and number1>number3:
print(number1)
if number2>number1 and number2>number3:
print(number2)
if number3>number2 and number3>number1:
print(number3)
my_number(65, 75, 46)
结果
75
6.编写一个函数, 提取指定字符串中的所有的字母,然后拼接在一起后打印出来
例如: ' 12a&bc12d--' --->打印' abcd '
str1 = '12a&bc12d'
def my_str(str2):
str3 = ''
for item in str2:
if ('a'<=item<='z') or ('A'<=item<='Z'):
str3 += item
print(str3)
my_str(str1)
结果
abcd
7.写一个函数,求多个数的平均值
def my_number(*numbers):
sum = 0
count = 0
for item in numbers:
sum += item
count += 1
print('平均值:', sum/count)
my_number(15, 11, 65, 36, 24, 48, 91, 75, 46)
结果
平均值: 45.666666666666664
8.写一个函数,默认求10的阶层,也可以求其他数的阶层
number = input('请输入阶乘的数>>>')
def func2(number1,a=10):
i = 1
for item in range(1, a + 1):
i *= item
print('10的阶乘:',i)
i = 1
number1 = int(number1)
for item in range(1, number1+1):
i *= item
print('%d的阶乘:'% number1, i)
func2(number)
结果
请输入阶乘的数>>>12
10的阶乘: 3628800
12的阶乘: 479001600
9.写一个函数,可以对多个数进行不同的运算
例如: operation('+', 1,2,3) --->求1+2+3的结果
operation( '-',10,9) --->求10-9的结果
operation( '',2,4,8,10) --->求24* 8* 10的结果
def operation(str1, *numbers):
if str1 == '*':
i = 1
for item in numbers:
i *= item
print(i)
if str1 == '+':
i = 0
for item in numbers:
i += item
print(i)
if str1 == '-':
item = numbers[0]*2
for i in numbers:
item -= i
print(item)
if str1 == '/':
item = numbers[0]**2
for i in numbers:
item /= i
print(item)
operation( '/',15,5,3)
operation( '+',15,5,3)
operation( '-',15,5,3)
operation( '*',15,5,3)
结果
1.0
23
7
225
网友评论