- 编写函数,求1+2+3+…N的和
def sum_num(n):
"""
求1+。。。n的和
:param n:
:return:
"""
sum_inner=0
for i in range(n+1):
sum_inner+=i
return sum_inner
print(sum_num(100))
- 编写一个函数,求多个数中的最大值
def get_max(*args):
"""
求多个数中的最大值
:param args: 传入的数字元组
:return: 最大值
"""
max_num=0
for num in args:
if max_num<num:
max_num=num
return max_num
- 编写一个函数,实现摇骰子的功能,打印N个骰子的点数和
def get_dice_sum(n):
"""
打印N个骰子的点数和
:param n: 骰子的点数
:return:
"""
dice_sum=0
for i in range(n):
dice_sum+=random.randrange(1,7)
return dice_sum
print(get_dice_sum(5))#17
4.编写一个函数,交换指定字典的key和value。
例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'}
def exchange_dict(dict1):
"""
交换字典里的key和value的值
:param kwargs:
:return:
"""
new_dict={}
for key in dict1:
new_dict[dict1[key]] =key
return new_dict
print(exchange_dict({"a":1,"b":8}))#{1: 'a', 8: 'b'}
5.编写一个函数,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串
def get_alpha(str1:str):
"""
提取字符串中所有字母,然后拼接在一起
:param str1: 输入的字符串
:return:输出的字符串
"""
if not str1:
return "空字符串,无法执行操作"
else:
new_str=""
for char in str1:
if char.isalpha():
new_str+=char
return new_str
print(get_alpha("shdksue23678sd7d"))#shdksuesdd
6.写一个函数,求多个数的平均值
def get_ave(*args):
"""
求多个数的平均值
:param args:
:return:
"""
if len(args)==0:
return "空元素,无法返回"
else:
sum_num=0
for i in args:
sum_num+=i
return sum_num/len(args)
print(get_ave(1,2,3,4,5))#3.0
7.写一个函数,默认求10的阶乘,也可以求其他数字的阶乘
def get_factorial(num=10):
mutiply=1
for i in range(1,num+1):
mutiply*=i
return mutiply
print(get_factorial(5))#120
8.写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母
def capitalize_alpha(str1:str):
if str1!=" ":
new_str= ""
for i in str1:
if "a" <=i<="z":
new_str+=chr(ord(i)-32)
else:
new_str+=i
return new_str
else:
return False
print(capitalize_alpha("Ahkjfsd"))#AHKJFSD
- 写一个自己的endswith函数,判断一个字符串是否已指定的字符串结束
例如: 字符串1:'abc231ab' 字符串2:'ab' 函数结果为: True
字符串1:'abc231ab' 字符串2:'ab1' 函数结果为: False
def endswith(str_parent:str,str_son:str):
if str_parent:
length = len(str_son)
for index in range(len(str_parent)-length+1):
if str_parent[index:(length+index)]==str_son:
return True
else:
return False
else:
return False
print(endswith("shdsgdhew","ew"))
- 写一个自己的isdigit函数,判断一个字符串是否是纯数字字符串
def judge_num(str1:str):
if str1:
for num in str1:
if not "0"<=num<="9":
return False
else:
return True
else:
return "空字符串"
print(judge_num("hskhdu839we"))#False
11.写一个自己的upper函数,将一个字符串中所有的小写字母变成大写字母
def upper_alpla(str1:str):
if len(str1):
new_str=""
for i in str1:
if "a"<=i<="z":
new_str+=chr(ord(i)-32)
else:
new_str+=i
return new_str
else:
return "空字符串"
print(upper_alpla("hsjkdhks"))#HSJKDHKS
12.写一个自己的rjust函数,创建一个字符串的长度是指定长度,
原字符串在新字符串中右对齐,剩下的部分用指定的字符填充
def self_define_rjust(str1:str,num:int,char:chr):
new_str=""
length=len(str1)
new_str=char*(num-length)+str1
return new_str
print(self_define_rjust("hjs",8,"*"))#*****hjs
13.写一个自己的index函数,统计指定列表中指定元素的所有下标,如果列表中没有指定元素返回-1
def feedback_index(str1:str,char:chr):
index_list=[]
for index in range(len(str1)):
if str1[index]==char:
index_list.append(index)
if index_list:
return index_list
else:
return "-1"
str1="sfdfhs"
char="n"
- 写一个自己的len函数,统计指定序列中元素的个数
例如: 序列:[1, 3, 5, 6] 结果: 4
序列:(1, 34, 'a', 45, 'bbb') 结果: 5
序列:'hello w' 结果: 7
def define_num(seq):
num_sum=0
for i in seq:
num_sum+=1
return num_sum
print(define_num("sdisufswef"))#10
- 写一个自己的max函数,获取指定序列中元素的最大值。如果序列是字典,取字典值的最大值
def define_max(unknown):
if type(unknown)==dict:
return sorted((unknown.values()),reverse=True)[0]
else :
return sorted(unknown, reverse=True)[0]
# print("-------")
print(define_max([71,23,23,1,2]))
16.写一个函数实现自己in操作,判断指定序列中,指定的元素是否存在
def define_exsist(char,*args):
for cha in args:
if cha==char:
return True
break
else:
return False
print(define_exsist(5,5,790))#True
17.写一个自己的replace函数,将指定字符串中指定的旧字符串转换成指定的新字符串
def define_replace(str1:str,old_str,new_str):
length=len(old_str)
changed_str=""
changed_str=new_str.join(str1.split(old_str))
return changed_str
str1='how are you? and you?'
print(str1,"you","me")#how are you? and you? you me
18.写四个函数,分别实现求两个列表的交集、并集、差集、补集的功能
def difine_intersection(list1,list2):
set1=set(list1)
set2 = set(list2)
new_set=set1&set2
return new_set
def difine_union_set(list1,list2):
set1=set(list1)
set2 = set(list2)
new_set=set1|set2
return new_set
def difine_Difference_set(list1,list2):
set1=set(list1)
set2 = set(list2)
new_set=set1-set2
return new_set
def difine_complement(list1,list2):
set1=set(list1)
set2 = set(list2)
for i in set2:
if i in set1:
new_set=set1-set2
return new_set
else:
return "没有补集"