在写一个程序的时候,我们不能总是写一些重复的代码,这样看上去很繁琐很冗余。这时候需要借助函数。将功能实现部分写在函数中,需要用的时候,利用函数提供的接口,传递参数进行运算,实现特定功能。
函数定义
最简单的函数如下:
#####simplest function#####
def print_two(arg1, arg2):
print(f"arg1: {arg1}, arg2: {arg2}")
###传递的参数为arg1和arg2,要注意缩进问题
print_two("Zed","Shaw") ###调用函数的时候要记得传递参数进去
运行结果如下:
一个更复杂一点的小例子:
#####file printing#####
###文件读写os包
import os
def transition(f):
f.seek(0) ###0代表offset的量
def print_all_line(line_count, f):
print(line_count,f.readline())
file = open("test.txt")
###直接读取文件并打印
print("print the file directly:")
for info in file:
print(info)
###调用函数打印
print("using transition function")
transition(file)
print("using print_all_line function")
for curren_line in range(1,4):
print_all_line(curren_line, file)
运行结果如下:
其中,test.txt文件中的内容是:
函数返回
调用了函数,有时候需要得到它的运行结果,此时需要函数返回一个值给调用者。如下面最简单的加、减、乘函数:
#####function return sth#####
def add(a,b):
return a+b
def minus(a,b):
return a-b
def multiply(a,b):
return a*b
var1 = 3
var2 = 5
result1 = add(var1,var2)
result2 = minus(var1,var2)
result3 = multiply(var1,var2)
print(f"var1+var2={result1}")
print(f"var1-var2={result2}")
print(f"var1*var2={result3}")
运行结果如下:
以上是最基本的函数运用,然而在实际情况中要复杂得多,以后我们将慢慢接触到。