接下来咱们将学习 Python 中的函数和模块。函数是一段具备特定性能的可重用代码块,而模块则是蕴含函数和变量定义的文件,可供其余程序调用。
1. 函数
函数是一种代码形象和重用的形式。在 Python 中,咱们应用 def
关键字来定义函数。以下是一个简略的函数示例:
def greet(name):
print(f"Hello, {name}!")
greet("John")
在这个例子中,咱们定义了一个名为 greet
的函数,它承受一个参数name
,并打印一条问候语。而后,咱们调用了这个函数并传入字符串 ”John” 作为参数。
1.1 返回值
函数能够通过 return
关键字返回一个值。例如:
def add(a, b):
return a + b
result = add(3, 4)
print(result) # 输入 7
在这个例子中,咱们定义了一个名为 add
的函数,它承受两个参数 a
和b
,并返回它们的和。而后,咱们调用了这个函数并将返回值存储在变量 result
中,最初打印 result
的值。
1.2 默认参数和关键字参数
函数能够具备默认参数值,这意味着在调用函数时,如果没有提供相应的参数值,将应用默认值。例如:
def greet(name, greeting="Hello"):
print(f"{greeting}, {name}!")
greet("John")
greet("John", "Hi")
greet("John", greeting="Hey")
在这个例子中,咱们定义了一个名为 greet
的函数,它承受两个参数 name
和greeting
,其中 greeting
具备默认值 ”Hello”。咱们能够通过以下三种形式调用这个函数:
- 只提供
name
参数,应用默认的greeting
参数值。 - 提供
name
和greeting
参数,笼罩默认值。 - 应用关键字参数指定
greeting
的值。
1.3 可变参数
函数能够承受可变数量的参数。在 Python 中,咱们应用 *args
和**kwargs
来传递可变数量的参数。例如:
def print_args(*args, **kwargs):
print(f"Positional arguments: {args}")
print(f"Keyword arguments: {kwargs}")
print_args(1, 2, 3, a=4, b=5)
在这个例子中,咱们定义了一个名为 print_args
的函数,它承受任意数量的地位参数和关键字参数。而后咱们打印了这些参数。在调用这个函数时,咱们传递了三个地位参数和两个关键字参数。
2. 模块
模块是蕴含 Python 代码的文件。咱们能够应用 import
关键字导入模块,并应用模块中的函数和变量。以下是一个简略的示例:
# my_module.py
def greet(name):
print(f"Hello, {name}!")
def add(a, b):
return a + b
咱们首先创立了一个名为 my_module.py
的文件,并在其中定义了两个函数。而后,在另一个文件中,咱们能够导入并应用这些函数:
# main.py
import my_module
my_module.greet("John")
result = my_module.add(3, 4)
print(result)
在这个例子中,咱们导入了 my_module
模块,并应用模块中的 greet
和add
函数。
2.1 from ... import ...
语句
咱们能够应用 from ... import ...
语句只导入模块中的特定函数或变量。例如:
from my_module import greet, add
greet("John")
result = add(3, 4)
print(result)
在这个例子中,咱们应用 from ... import ...
语句导入了 my_module
模块中的 greet
和add
函数,而后间接应用了这些函数。
2.2 as
关键字
咱们能够应用 as
关键字为导入的模块或函数指定别名。例如:
import my_module as mm
mm.greet("John")
result = mm.add(3, 4)
print(result)
在这个例子中,咱们为 my_module
模块指定了别名mm
,而后应用这个别名调用了模块中的函数。
示例
以下是一些应用函数和模块的示例:
示例 1: 计算圆的面积
咱们能够创立一个名为 circle.py
的模块,用于计算圆的面积。
# circle.py
import math
def area(radius):
return math.pi * radius ** 2
而后,在另一个文件中,咱们能够导入并应用这个模块:
# main.py
import circle
radius = 5
result = circle.area(radius)
print(f"The area of the circle with radius {radius} is {result:.2f}")
示例 2: 斐波那契数列生成器
咱们能够创立一个名为 fibonacci.py
的模块,用于生成斐波那契数列。
# fibonacci.py
def generate(n):
sequence = []
a, b = 0, 1
while len(sequence) < n:
sequence.append(a)
a, b = b, a + b
return sequence```
而后,在另一个文件中,咱们能够导入并应用这个模块:
main.py
from fibonacci import generate
n = 10
sequence = generate(n)
print(f”The first {n} numbers of the Fibonacci sequence are: {sequence}”)
这些示例展现了如何应用函数和模块来组织和重用代码。心愿这些示例能帮忙你更好地了解 Python 中的函数和模块。如果你有任何问题,请随时发问。举荐浏览:https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA
https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g