本文介绍: 函数通过def关键字定义函数体开始于冒号(:)后面,并且缩进代码表示函数内部语句。”””函数文档字符串docstring)”””# 函数体…Python 中的函数编程不可或缺的工具,它们帮助我们结构化和高效的方式组织代码通过深入了解函数的各种特性我们可以更好管理代码复杂性,编写出易于阅读维护程序掌握 Python 函数使用将使你在编程路上更进一步

深入理解 Python 中的函数

简介

        在编程中,函数是组织复用代码基本单元。Python 作为一门高级编程语言,提供了丰富的函数特性来帮助开发者编写清晰、模块化和高效的代码。在本文中,我们将深入探讨 Python 函数的定义、调用参数返回值作用域关键概念

定义函数

        函数通过 def 关键字定义。函数体开始于冒号(:)后面,并且缩进代码表示函数内部的语句。

def function_name(parameters):
    """函数文档字符串(docstring)"""
    # 函数体
    ...

调用函数

        一旦定义了函数,就可以通过函数名以及括号内的实际参数调用它。

# 调用之前定义的函数 
function_name(arguments) 

参数和实参

        函数参数是定义函数时列出变量,而实际参数(实参)是在函数调用传递给函数的值。Python 支持位置参数关键字参数、默认参数、可变参数列表和可变关键字参数。

默认参数

        默认参数允许你为参数指定默认值,如果调用函数没有传递该参数,则会使用默认值

def greet(name='World'): 
    print(f"Hello, {name}!") 

greet() # 输出: Hello, World! 
greet("Alice") # 输出: Hello, Alice! 

        注意:多个参数时在默认值参数右侧不能出现没有默认值的参数

def display(a,b=1,c=2):
    print(a,b,c)

dispaly(1)#输出结果4

可变参数

位置参数

        函数传参时,形参和实参需要一对

def show(n,s):
    for c in s:
        print(f'{n}--{c}')
#函数调用
show(1,'hello')

#输出结果
1 -- h
1 -- e
1 -- l
1 -- l
1 -- o

        不定位置参数:通过在参数名前加星号(*),可以让函数接收不定数量的位置参数,这些参数被存储一个元组

def add(*args): 
    return sum(args) 

print(add(1, 2, 3)) # 输出: 6 
关键字参数

        关键字参数解决参数传递时的顺序问题,通过使用关键字和参数一一对应可以实现无序传递

def show(n,s):
    for c in s:
        print(f'{n} -- {c}')

show(s='hello',n=1)

        不定长关键字参数:通过在参数名前加两个星号(**),可以接收不定数量的关键字参数,这些参数被存储一个字典

def profile(**kargs): 
    for key, value in kargs.items(): 
        print(f"{key}: {value}") 

profile(name="Alice", age=30, job="Developer") 

参数综合

一、定义一个可以接收任何参数的函数

def display(*args,**kwargs):
    print(f'args:{args}')
    print(f'kwargs:{kwargs}')
display()
display(1,2,3)
display(a=1,b=2)
display(1,2,3,4,a=1,b=2)

#位置参数不能放在关键字参数后面  因为你定义的时候把不定长位置参数放在不定长关键字参数前面display(a=1,b=2,2,3,4)#这行代码报错

二、混合写法(先把abcde赋值然后关键字参数前面的都是不定长位置参数,随后定长关键字参数随后不定长关键字参数)

def func(a, b, c, d, e, *args, f=1, g=2, **kwargs):
    print(a,b,c,d,e)
    print(args)
    print(f,g)
    print(kwargs)
func(1,2,3,4,5,5,6,7,8,9,f=11,g=22,h=333,i=444)

返回值

  return 语句用于从函数中返回值。如果没有 return 语句或者 return 后面没有任何值,函数将返回 None。遇见return直接结束函数执行

def square(number): 
    return number**2 
result = square(4) 
print(result) # 输出: 16 

作用域

        在 Python 中,变量作用域是由变量定义的位置决定的。函数中定义的变量拥有局部作用域,而在函数外定义的变量则拥有全局作用域。

        解释器执行代码时,发现return 后成如果有多个值 ,那么就会将这多个值 ,直接组包成一个元组然后这个元组返回

x = "global" 
def func(): 
    y = "local" 
    print(y) # 输出: local 
    print(x) # 输出: global 

func() 
print(x) # 输出: global 
# print(y) # 错误: y 在此不可用,因为它是局部变量

文档字符

        每个函数都可以有一个文档字符串(docstring),它通常用引号括起来。文档字符串用于解释函数的目的和如何使用它。

def greet(name): 
"""向用户发出问候""" 
    print(f"Hello, {name}!") 

总结

        Python 中的函数是编程中不可或缺的工具,它们帮助我们以结构化和高效的方式组织代码。通过深入了解函数的各种特性,我们可以更好管理代码的复杂性,编写出易于阅读维护程序掌握 Python 函数的使用将使你在编程路上更进一步。

原文地址:https://blog.csdn.net/qq_44709053/article/details/134752559

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_43226.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注