chapter5 模块和函数
- math模块 参考
模块的数学运算由C语言的标准库定义,永久有效。只支持实数运算,cmath模块支持复数运算。返回结果大部分为浮点型。
math.gcd()函数,计算两个数的最大公约数。注意:只能是两个数
math.log2(x)函数,计算以2为底,x的对数。
math.log10(x)函数,计算以10为底,x的对数。
math.log(a,b)函数,计算以b为底,a的对数。注意:b的缺省值为e,即自然对数
input()函数,Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
math.sin(),math.cos(),math.tan()函数,计算正弦、余弦、正切函数
math.fsum()函数,对迭代器中的每个元素进行求和操作。
- 定义函数
函数:通过函数名称执行一系列语句,完成特定的函数功能。
通过def定义函数,函数体内的语句前有适当的空格。
add_one(val)函数
def add_one(val):
print("Function got value", val)
return val+1
val=add_one(2)
print(val)
Function got value 2
3
add2(val1,val2)函数。注意运行结果的空格。
def add2(val1,val2):
s=val1+val2
print("the sum of ",val1," and ",val2," is ",s)
print("the sum of",val1,"and",val2,"is",s)
add2(1,2)
the sum of 1 and 2 is 3
the sum of 1 and 2 is 3
add3()函数
def add3(val1,val2,val3):
s=val1+val2+val3
print("the sum of",val1,val2,"and",val3,"is",s)
add3(1,2,3)
the sum of 1 2 and 3 is 6
choose_greater(val1,val2)函数。注意:def和if语句在使用时的冒号:和缩进格式。
def choose_greater(val1,val2):
if val1>val2:
g=val1
else:
g=val2
print("the greater is",g)
choose_greater(3,5)
the greater is 5
is_divisible(a,b)函数
def is_divisible(a,b):
if a%b==0:
return True
else:
return False
print(is_divisible(5,6))
print(is_divisible(6,2))
False
True
average(list)函数
def average(l):
return sum(l)/len(l)
ls=[1,2,3]
print(average(ls))
2.0
- 递归函数
递归函数:不断调用自身的函数。
注意:递归函数必须有一个停止的条件,并且递归调用的过程中不断向停止条件靠近,以防无休止地调用自身。
在定义一个递归函数时,应该首先定义它的停止条件。其次注意要调用它自身。
factorial(x)函数
def factorial(x):
if x==0:
return 1
else:
return x*factorial(x-1)
print(factorial(4))
24
total_sum(x)函数
def total_sum(x):
if x==0:
s=0
else:
s=x+total_sum(x-1)
return s
print(total_sum(100))
5050
fibonnaci(x)函数
def fibonnaci(x):
if x==0 or x==1:
s=x
else:
s=fibonnaci(x-2)+fibonnaci(x-1)
return s
print(fibonnaci(11))
89