"""author = 曹琦"""
1.编写函数,求1 + 2 + 3 +…N的和
def cq_sum1(N):
"""求1 + 2 + 3 +…N的和"""
result = 0
for num1 in range(1,N+1):
result += num1
return result
N = 100
print('1 + 2 + 3 +…N的和为:',cq_sum1(N))
2.编写一个函数,求多个数中的最大值
def cq_max(*nums):
num2 = 0
for num1 in nums:
if num1 > num2:
num2 = num1
return num2
print(cq_max(1,2,3,4,5,6,7))
3.编写一个函数,实现摇骰子的功能,打印N个骰子的点数和
import random
def cq_sum(N):
sum1 = 0
for n in range(1,N+1):
num1 = random.randint(1,6)
sum1 += num1
return sum1
print(cq_sum(7))
4.编写一个函数,交换指定字典的key和value。
例如: dict1 = {'a': 1, 'b': 2, 'c': 3} --> dict1 = {1: 'a', 2: 'b', 3: 'c'}
def cq_exchange(dict1):
for key in dict1:
value = dict1[key]
del dict1[key]
dict1[value] = key
return dict1
dict1 = {'a': 1, 'b': 2, 'c': 3}
print(cq_exchange(dict1))
dict1 = {1: 'a', 2: 'b', 3: 'c'}
print(cq_exchange(dict1))
5.编写一个函数,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串
例如: 输入 '12a&bc12d-+' --> 'abcd'
def cq_func1(str1):
str2 = ''
for char in str1:
if 'a' <= char <= 'z' or 'A' <= char <= 'Z':
str2 += char
return str2
print(cq_func1('12a&bc12d-+'))
6.写一个函数,求多个数的平均值
def cq_average(*nums):
sum1 = 0
n = 0
for num1 in nums:
sum1 += num1
n +=1
return sum1/n
print(cq_average(1,2,3,4,5,6))
7.写一个函数,默认求10的阶乘,也可以求其他数字的阶乘
def cq_factorial(num = 10):
factorial = 1
for n in range(1,num+1):
factorial *= n
return factorial
print(cq_factorial(4))
== == == == == == == == == == =注意:以下方法不能使用系统提供的方法和函数,全部自己写逻辑 == == == == == == ==
8.写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母
例如: 'abc' -> 'Abc' '12asd' --> '12asd'
str1 ='abc'
def cq_capitalize(str1):
if 'a' <= str1[0] <= 'z':
char1 = chr(ord(str1[0])-32)
str1 = char1 + str1[1::]
print(str1)
cq_capitalize('abc')
9.写一个自己的endswith函数,判断一个字符串是否已指定的字符串结束
例如: 字符串1:'abc231ab'
字符串2: 'ab'
函数结果为: True
字符串1: 'abc231ab'
字符串2: 'ab1'
函数结果为: False
def cq_endswish(str1,str2):
N = len(str2)
str3 = str1[-N:]
if str3 == str2:
print(True)
else:
print(False)
cq_endswish('abc231ab','ab1')
10.写一个自己的isdigit函数,判断一个字符串是否是纯数字字符串
例如: '1234921'
结果: True
'23函数'
结果: False
'a2390'
结果: False
def cq_isdigit(str1):
for char in str1:
if not '0' <= char <= '9':
print(False)
break
else:
print(True)
cq_isdigit('12345647')