7 个容易理解带有参数、返回和数据类型的 Python 函数示例
函数是分配了名称的块中的代码片段。它接受输入,执行计算或操作并返回输出。
函数增强了代码的可重用性。
在本教程中,我们将讨论以下示例:
- 基本 Python 函数示例
- Python 内置函数
- Python 用户定义函数
- Python 函数参数
- Python 函数未知数量的参数
- Python 函数返回值
- 参数和返回值的数据类型
1. 基本 Python 函数示例
下面是一个示例 python 函数,它接受两个参数并计算总和并返回计算值。
# function definition and declaration
def calculate_sum(a,b):
sum = a+b
return sum
# The below statement is called function call
print(calculate_sum(2,3)) # 5
Python 中有两大类函数:内置函数和用户定义函数。
2. Python 内置函数
安装 Python 后,它会附带许多功能。用户不必担心函数的定义。print() 是 Python 中最常用的内置函数之一。
print("Hello world")
print(len("My name is Aanisha Mishra"))
此类函数的更多示例是:len()、str()、int()、abs()、sum() 等。
3. Python 用户定义函数
用户定义的函数使用 def 关键字声明。关键字后面应该跟函数名。
def calculate_si_amount(principal, rate, time):
interest = (principal*rate*time)/100
return principal+interest
在此函数中,通过对本金应用单利计算最终金额。calculate_si_amount 是函数名。主体、速率和时间是参数,函数返回计算数据。
函数不需要接受参数和返回值。它可以两者都做,或者其中之一,或者什么都不做。下面是一个不接受任何参数但返回数据的函数示例。
from random import seed, random
from random import random
def generate_random_number():
seed(10)
return random()
4. Python 函数参数
函数可以有默认参数。
def multiply(a, b=10):
return a*b
multiply(12) # 120
multiply(2, 3) # 6
multiply(b=9) # error: None*9 is not valid
在这个函数中,如果用户没有给出第二个参数b,则假定它是10,但提供第一个参数是必要的。
5. Python 函数参数个数未知
注意:如果函数中有 4 个参数,并且为第二个参数定义了默认值,则还应为第三个和第四个参数分配一个默认值。
如果函数应该期望的参数数量未知,则将 *args 添加到函数定义中作为参数之一。此参数需要一个元组。星号(*)在这里很重要。名称 args 只是一个约定。它可以被赋予任何其他名称。
def calculate_sum(a, *args):
sum = a
for i in args:
sum += i
return sum
calculate_sum(10) # 10
calculate_sum(10, 11, 12) # 33
calculate_sum(1, 2, 94, 6, 2, 8, 9, 20, 43, 2) # 187
类似地,**kwargs 需要一个字典作为参数。
def print_names(f1, l1, **kwargs):
print(f1, l1, end=' ')
for key in kwargs:
print(key, kwargs[key], end=' ')
print_names("anish", "gupta")
print_names("anish", "gupta", mohan="singh", mohit="jain")
# anish gupta anish gupta mohan singh mohit jain
上面的代码片段引用了 for 循环。
6. Python 函数返回值
Python 允许函数返回多个值。
def prime_numbers(x):
l=[]
for i in range(x+1):
if checkPrime(i):
l.append(i)
return len(l), l
no_of_primes, primes_list = prime_numbers(100)
这里正在返回两个值。调用此函数时,返回值同时存储在两个变量中。
注意:如果函数不返回任何内容,则隐式返回 None。
7. 参数和返回值的数据类型
定义函数参数和返回值的数据类型可以让用户知道函数的期望。
def prime_numbers(x:int) -> (int, list):
l=[]
for i in range(x+1):
if checkPrime(i):
l.append(i)
return len(l), l
函数定义表明它需要一个 int 类型的参数,将分别返回 int 和 list 类型的两个值。
- 点赞
- 收藏
- 关注作者
评论(0)