- 编写一个函数,求1+2+3+...+N
def sum_n (n):
sum1 = sum(range(1,n+1))
return sum1
sum2 = sum_n(100)
print(sum2) # 5050
- 编写一个函数,求多个数中的最大值
def get_max(*nums):
return max(nums)
max_num = get_max(1, 100, 4, 213, 321, 54, 12)
print(max_num) # 321
- 编写一个函数,实现摇骰子的功能,打印n个骰子的点数和
import random
def dice(n):
sum1 = 0
for _ in range(n):
num = random.randint(1, 6)
print(num)
sum1 += num
return sum1
sum2 = dice(3)
sum3 = dice(3)
print(sum2,sum3) # 13 6
- 编写一个函数,交换指定字典的key和value。
如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
def exchange_dict(any_dict):
# 声明一个交换字典key和value的函数
for key in any_dict.copy():
# 将键值对删除,并将值保存在value中
value = any_dict.pop(key)
# 将key和value交换后重新添加到字典中
any_dict[value] = key
# 返回交换后的字典
return any_dict
dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = exchange_dict(dict1)
print(dict2)
- 编写一个函数,提取指定字符串中的所有的字母,然后拼接在一起后打印出来
如:'12a&bc12d--' ---> 打印'abcd'
def print_alpha(any_str):
# 定义一个函数提取字符串的字母并拼接打印
# 定义一个空字符串用来存放字母
re_str = ''
for index in range(len(any_str)):
str1 = any_str[index]
# 检查字符是否是字母
if str1.isalpha():
re_str += str1
print(re_str)
str1 = '12a&bc12d--'
print_alpha(str1)
- 写一个函数,求多个数的平均值
def get_avg(*nums):
# 定义一个函数用来求多个数的平均值
# 求输入数的和
sum1 = sum(nums)
# 平输入数的平均值
avg = sum1 / len(nums)
# 返回平均值
return avg
avg_num = get_avg(10, 20, 30, 40, 50)
print(avg_num) # 30.0
- 写一个函数,默认求10的阶层,也可以求其他数的阶层
def get_factorial(n=10):
sum1 = 1
for i in range(1,n+1):
sum1 *= i
return sum1
num = get_factorial()
print(num) # 3628800
num2 = get_factorial(5)
print(num2) # 120
- 写一个函数,可以对多个数进行不同的运算
如: operation('+', 1, 2, 3) ---> 求 1+2+3的结果 operation('-', 10, 9) ---> 求 10-9的结果 operation('', 2, 4, 8, 10) ---> 求 24810的结构
def calculate(oper, *nums):
sum1 = nums[0]
if oper == '+':
for num in nums[1:]:
sum1 += num
elif oper == '-':
for num in nums[1:]:
sum1 -= num
elif oper == '*':
for num in nums[1:]:
sum1 *= num
elif oper == '/':
for num in nums[1:]:
sum1 /= num
return sum1
num = calculate('+', 1, 2, 3)
print(num) # 6
num2 = calculate('-', 10, 9)
print(num2) # 1
num3 = calculate('*', 2, 4, 8, 10)
print(num3) # 640
9.写一个函数,求指定列表中,指定的元素的个数
def count_num(any_list,any_item):
sum1 = 0
for item in any_list:
if item == any_item:
sum1 += 1
return sum1
list1 = [1, 3, 1, 4, 5, 2, 0]
num = count_num(list1, 1)
print(num) # 2
10.写一个函数,获取指定列表中指定元素对应的下标(如果有多个,一起返回)
def get_index(any_list, any_item):
index_list = []
index = 0
while index < len(any_list):
if any_list[index] == any_item:
index_list.append(index)
index += 1
return index_list
list1 = [1, 3, 1, 4, 5, 2, 0]
index_list1 = get_index(list1,1)
print(index_list1) # [0, 2]