欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

人生苦短我学Python (六)函数

程序员文章站 2022-05-28 21:27:23
...

成长很苦,进步很甜,希望我们大家每天都能够向上生长。

函数的概念引用一下菜鸟教程上的:

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

定义一个函数如下:

def function_name():
    """
    这是函数的注释
    :return: 
    """
    # 这里都是函数的内容
    
function_name()  # 这是函数的调用

函数名的命名要求与变量命名保持一致

函数定义时()内的参数叫形参,函数调用时()内的参数叫做实参

函数调用时需要传递相对应的参数,可传递的参数类型有以下几种:

  • 必须参数

  • 关键字参数

  • 默认参数

  • 不定长参数

必须参数


def bixu(num):
    """
    输出一个数字与1相加的和
    :return:
    """
    num_sum = num + 1
    print(num_sum)
bixu()

正确调用:
人生苦短我学Python (六)函数

调用时不传必须参数报错截图

人生苦短我学Python (六)函数

关键字参数

def guanjian(name,age):
    """
    输出一个人的姓名和年龄
    :return:
    """
    print("{}的年龄是{}".format(name,age))
    
    
guanjian("grassroadsZ",18)

正确的输入输出:

人生苦短我学Python (六)函数

错误输出

人生苦短我学Python (六)函数

默认参数

def moren(name,age=18):
    """
    输出任何人的姓名和年龄
    :return:
    """
    print("{}的年龄是{}".format(name,age))
    
    
moren()

人生苦短我学Python (六)函数

函数调用时只是传了一个姓名,并没有传递年龄参数。所以age默认为18

当传递了age参数时,则默认参数的值会被覆盖

不定长参数

有时候传递实参时,实参的个数不定,这时候就需要用到不定长参数,其中位置参数的不定长参数的关键字是args,一个会将传入的不定长参数打包成一个元组,关键字参数的关键字是**kwargs,**会将传入的不定长关键字参数打包成一个字典

人生苦短我学Python (六)函数
拆包(使用一个*)字典拆包针对与key而非value

人生苦短我学Python (六)函数

return返回值

当函数调用结束后需要对函数调用后的结果有个反馈,这个时候就需要用return,return默认返回为None

def sum( num1, num2 ):
   # 返回2个参数的和."
   total = num1 + num2
   print ("函数内 : ", total)
   return total
 
# 调用sum函数
total = sum( 10, 20 )
print ("函数外 : ", total)

# 输出结果
函数内 :  30
函数外 :  30

作用域

python中的变量在访问时并不是想访问就能访问到的,是有一定的权限的,权限由定义变量的位置决定

顺序为:

局部 —》函数闭包外 —》全局变量 —》模块

变量位于函数内部时叫做局部变量,位于函数外部时叫做全局变量;

局部变量的作用域只在函数内部生效,当想要将函数内部的局部变量修改为全局变量时需使用global value_name 来修改。

概念性的东西较多,我自己也是知之甚少,有错误之处,欢迎指正。

本文由grassroadsZ原创首发于微信公众号:下钻上长
人生苦短我学Python (六)函数

相关标签: 基础知识