函数的作用
不知道大家是否注意到,在上面的代码中,我们做了3次求阶乘,这样的代码实际上就是重复代码。编程大师Martin Fowler先生曾经说过:“代码有很多种坏味道,重复是最坏的一种!”,要写出高质量的代码首先要解决的就是重复代码的问题。对于上面的代码来说,我们可以将计算阶乘的功能封装到一个称之为“函数”的功能模块中,在需要计算阶乘的地方,我们只需要“调用”这个“函数”就可以了
定义函数
在了解了如何定义函数后,我们可以对上面的代码进行重构,所谓重构就是在不影响代码执行结果的前提下对代码的结构进行调整。
函数的参数
函数是绝大多数编程语言中都支持的一个代码的“构建块”,但是Python中的函数与其他语言中的函数还是有很多不太相同的地方,其中一个显著的区别就是Python对函数参数的处理。在Python中,函数的参数可以有默认值,也支持使用可变参数,所以Python并不需要像其他语言一样支持函数的重载,因为我们在定义一个函数的时候可以让它有多种不同的使用方式
def hs():
zhengshu = 0
fushu = 0
sum_ = 0
cishu = 0
data = 1
while data !=0 :
data = eval(input(">>"))
if data > 0:
zhengshu += 1
if data < 0:
fushu += 1
sum_ += data
if data != 0:
cishu += 1
print(zhengshu)
print(fushu)
print(sum_ / cishu)
def Start():
hs()
Start()
def money():
dorlla = 10000
for i in range (14):
dorlla = dorlla * 0.05 + dorlla
if i == 9:
print(dorlla)
print(dorlla)
def Start():
money()
Start()
def hs():
zhengshu = 0
fushu = 0
sum_ = 0
cishu = 0
data = 1
while data !=0 :
data = eval(input(">>"))
if data > 0:
zhengshu += 1
if data < 0:
fushu += 1
sum_ += data
if data != 0:
cishu += 1
print(zhengshu)
print(fushu)
print(sum_ / cishu)
def Start():
hs()
Start()
def zc():
count = 0
for i in range(100,1001):
if i % 5 == 0 and i % 6 == 0:
print(i,end=" ")
count =1
if count % 10 ==0:
print()
def Start():
zc()
Start()
1.def num1():
n = 0
while n ** 2 < 12000:
n +=1
print(n)
def Start():
num1()
Start()
2.def num2():
n = 0
while n ** 3 <12000:
n +=1
print(n-1)
def Start():
num2()
Start()
def num2():
Money = 10000
lilv = 5
nian = 5
for i in range(24):
M = Money * lilv / 100
T = 12 * M * nian
print(lilv,'%','月利率',M,'总和',T)
if lilv == 5.25:
print('.....')
lilv += 1/8
def Start():
num2()
Start()
def num2():
res = 0
for i in range(50000,0,-1):
res += 1/i
print(res)
def Start():
num2()
Start()
2.def num2():
res = 0
for i in range(1,50001,1):
res += 1/i
print(res)
def Start():
num2()
Start()
def num2():
res = 0
for i in range(1,98,2):
res += i/ (i+2)
print(res)
def Start():
num2()
Start()
def num2():
res = 0
for i in range(1,100000):
res += 4*((-1)**(i+1)/(2*i-1))
print(res)
def Start():
num2()
Start()