算法与Python

算法与Python 知识量:10 - 40 - 100

1.4 函数><

定义子函数- 1.4.1 -

在Python中,定义子函数的基本语法如下:

def function_name(parameters):  
    # 函数体  
    # 在这里写函数的功能  
    return result  # 返回值

其中,function_name 是给函数取的名字,parameters 是函数的参数列表(可以有多个参数,也可以没有参数),# 函数体 这一行表示函数的功能开始,return result 是函数的返回值,可以省略(如果没有返回值,可以不用写 return)。

以下是一个具体的例子:

def add_numbers(a, b):  
    # 函数体  
    result = a + b  # 把两个数相加  
    return result  # 返回结果

这个函数的功能是接受两个参数 a 和 b,然后把它们相加,返回结果。可以像下面这样调用这个函数:

sum = add_numbers(3, 5)  # sum 变量现在存储了8

主函数- 1.4.2 -

在Python中,主函数通常指的是程序的入口点,也就是程序开始执行的地方。在Python中,主函数通常是if __name__ == "__main__":下面的代码块。

下面是一个简单的例子:

def main():  
    print("Hello, World!")  
  
if __name__ == "__main__":  
    main()

在这个例子中,main()函数是主函数,它只是简单地打印出"Hello, World!"。if __name__ == "__main__":这一行是一个常见的模式,用于检查脚本是否作为主程序运行。如果是,那么main()函数就会被调用。

在Python中,可以定义多个函数,但是只有被定义为main()的函数才会在脚本作为主程序运行时被执行。

调用函数- 1.4.3 -

在Python中,可以通过函数名和括号来调用函数。括号中可以包含传递给函数的参数。

以下是一个简单的例子:

def greet(name):  
    print(f"Hello, {name}!")  
  
# 调用函数  
greet("Alice")

在这个例子中,定义了一个名为greet的函数,它接受一个参数name。然后,通过调用greet("Alice")来调用这个函数,并传递了一个字符串参数"Alice"。

可以在需要的时候调用任何已定义的函数,并且可以传递任意数量的参数,只要这些参数符合函数的定义。例如:

def add_numbers(x, y):  
    return x + y  
  
# 调用函数  
result = add_numbers(3, 5)  
print(result)  # 输出:8

在这个例子中,定义了一个名为add_numbers的函数,它接受两个参数x和y,并返回它们的和。然后,通过调用add_numbers(3, 5)来调用这个函数,并传递了两个整数参数。最后,将返回值存储在变量result中,并打印出来。

全局变量- 1.4.4 -

在Python中,全局变量是在函数之外声明的变量,它可以在程序的任何地方访问和修改。在函数内部,如果想访问或修改全局变量,需要使用global关键字。

下面是一个简单的示例,演示如何在Python中使用全局变量:

# 声明全局变量  
my_variable = 10  
  
# 定义一个函数,打印全局变量的值  
def print_global_variable():  
    print(my_variable)  
  
# 调用函数  
print_global_variable()  # 输出:10  
  
# 修改全局变量的值  
my_variable = 20  
print_global_variable()  # 输出:20

在上面的示例中,首先声明了一个全局变量my_variable,并赋值为10。然后,定义了一个函数print_global_variable(),它打印全局变量的值。在函数内部,没有使用global关键字,因为在函数外部声明了全局变量。调用print_global_variable()函数时,它会打印出全局变量的值,即10。接下来,修改了全局变量的值为20,并再次调用print_global_variable()函数,它会打印出新的值20。

需要注意的是,在函数内部声明一个与全局变量同名的局部变量会隐藏全局变量,如果想在函数内部访问全局变量,必须使用global关键字。例如:

# 声明全局变量  
my_variable = 10  
  
# 定义一个函数,打印全局变量的值  
def print_global_variable():  
    global my_variable  # 使用global关键字声明my_variable为全局变量  
    print(my_variable)  
  
# 调用函数  
print_global_variable()  # 输出:10

在这个示例中,在函数内部使用了global关键字来声明my_variable为全局变量。这样,就可以在函数内部访问全局变量了。