1. 編寫一個函數(shù),求1+2+3+...+N
def sum1(num):
num1=1
for x in range(1,num+1):
num1+=x
print(num1)
sum1(100)
2. 編寫一個函數(shù),求多個數(shù)中的最大值
def sum2(n):
max1 = max(n)
print(max1)
sum2(213,41,141,14124,241)
3. 編寫一個函數(shù),實現(xiàn)搖骰子的功能,打印n個骰子的點數(shù)和
import random
def sum1(n):
num1 = 0
while 0<=n:
num = random.randint(1, 6)
num1+=num
n = n - 1
print(num1)
sum1(5)
4. 編寫一個函數(shù),交換指定字典的key和value。
如:{'a':1, 'b':2, 'c':3} ---> {1:'a', 2:'b', 3:'c'}
def change_dict(list1:dict):
list_keys,list_values = [],[]
list2 = {}
list_keys = list1.keys()
list_values = list1.values()
list2 = list2.fromkeys(list_values) #先得到交換后的keys
count1 = 0
for values in list_values: #賦值交換后keys對應(yīng)的values
count2 = 0
for keys in list_keys:
if count2 == count1:
list2[values] = keys
count2 += 1
count1 += 1
print('改變前==》',list1)
return list2
print('改變后==》',change_dict({1:'a', 2:'b', 3:'c'}))
5. 編寫一個函數(shù),提取指定字符串中的所有的字母,然后拼接在一起后打印出來
def str2(n):
str1 = ''
for x in n:
if 'a'<=x<='z' or 'A'<=x<='Z':
str1+=x
else:
continue
print(str1)
str2('asdf223')
如:'12a&bc12d--' ---> 打印'abcd'
6. 寫一個函數(shù),求多個數(shù)的平均值
def num1(*n):
num = 0
for x in n:
num += x
print('和是%d;平均值是%.2f:'%(num,num/len(n)))
num1(10,23,1)
7. 寫一個函數(shù),默認求10的階層,也可以求其他數(shù)的階層
print('=============')
def factorial(n):
num1 =1
for x in range(1,n+1):
num1*=x
print('n的階乘是%d'%num1)
factorial(10)
8. 寫一個函數(shù),可以對多個數(shù)進行不同的運算
def operation(value1,*value2):
list1 = list(value2)
first_value = list1[0]
for x in list1[1:]:
first_value = eval('%d %s %d' % (first_value,value1,x))
print(first_value)
operation('+',1,2)
operation('*',2,3,4,5)
如: operation('+', 1, 2, 3) ---> 求 1+2+3的結(jié)果 operation('-', 10, 9) ---> 求 10-9的結(jié)果 operation('', 2, 4, 8, 10) ---> 求 24810的結(jié)構(gòu)
9.寫一個函數(shù),求指定列表中,指定的元素的個數(shù)
def list1(list,n):
num1=0
for x in list:
if x ==n:
num1+=1
print(num1)
list1([12,12,123,1,1],12)
10.寫一個函數(shù),獲取指定列表中指定元素對應(yīng)的下標(如果有多個,一起返回)
def list1(list,n):
for x in range(len(list)):
print(list)
list1([12, 12, 123, 1, 1], 12)