青程派
函数也称为方法,当一段代码可以重复使用进,可以写成一个【函数】,使用这个函数的行为叫做【调用】,下面是一段求质数的代码:
"""
判断一个整数是否为质数
质数:只能被1或自身整除的数
举例:1,3,5,7,9,11,13,17,19,23,29...
"""
num = 17
flag = True
for i in range(2, num):
if num % i == 0:
flag = False
break
if flag == True:
print("质数")
else:
print("不是质数")
为了可以重复使用这段代码,我们把它写成了函数:
"""
判断一个整数是否为质数
质数:只能被1或自身整除的数
举例:1,3,5,7,9,11,13,17,19,23,29...
1.使用函数
2.格式化字符串
"""
def is_prime(num_check):
for i in range(2, num_check):
if num_check % i == 0:
return False
return True
num = 23
if is_prime(num):
print('{num} 是质数.'.format(num=num))
else:
print('{num} 不是质数.'.format(num=num))
多个返回值
函数可以同时返回多个值,我们只需要用多个变量接收即可,下面是一段求大公约数和小公倍数的代码,注意多个返回值的用法
"""求2个整数的大公约数与小公倍数"""
def compute(x, y):
# num_x: 是小公倍数
# num_y: 大公约数
# 初始化为0
num_x, num_y = 0, 0
# 步:区分2个数中哪个是大数,哪个是小数
big_num = x
small_num = y
if big_num < small_num:
tmp = big_num
big_num = small_num
small_num = tmp
# 第二步:求小公倍数
for i in range(small_num, small_num * big_num + 1):
if i % small_num == 0 and i % big_num == 0:
num_x = i
break
# 第三步:求大公约数
for i in range(small_num, 0, -1):
if big_num % i == 0 and small_num % i == 0:
num_y = i
break
return num_x, num_y
numx, numy = compute(15, 28)
print('小公倍数={numx}, 大公约={numy}'.format(numx=numx, numy=numy))
除了返回多个值外,以上代码中还有另外4个知识点:
变量交换,即2个数互相调换
在循环中break的使用
循环中,循环因子递减(第三步中)
字符串格式化用法(format)