Python基础-函数

本文详细介绍了Python函数参数的四种类型:位置参数、关键字参数、缺省参数和不定长参数。通过示例展示了它们的使用方式,包括无参数、有返回值、有参数无返回值等不同情况。强调了位置参数必须在关键字参数前,缺省参数定义时需设置默认值,并讲解了*args和**kwargs在处理不定长参数时的作用。此外,还提到了函数调用的方式和`if __name__ == '__main__':`的原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

函数类型

一:位置参数(根据函数定义的参数位置来传递参数,注意传递和定义参数的顺序及个数必须一致)

1)无参数无返回值

def h_001():
    print('无参数无返回值函数')

if __name__ == '__main__':
    h_001()

2)无参数 有返回值

一般会是常量。不怎么变化的会使用此方法

def d():
    ip=122
    return ip
if __name__ == '__main__':
    res=add()
    print(res)

3)有参数无返回值

def h_004(name,age):#形参
    print(f"我的名字是{name},今年{age}")
if __name__ == '__main__':
    h_004("哈哈哈",18)#实参数

4)有参数有返回值

def h_002(a):#形参
    print(a)
    b=a+'002'
    return b
def h_003(a):
    h_002(a)
if __name__ == '__main__':
    h='sss'
    h_003(h)#实参
def add(a,b):
    return a+b#注意函数运行到return就会终止,return后面的内容不会执行
if __name__ == '__main__':
    res=add(1,2)#接收函数add return的结果
    print(res)

二:关键字参数(站在调用的角度)

关键字参数是指实际调用参数的时候,通过指定变量与值 来实现

def h_004(name,age):#形参
    print(f"我的名字是{name},今年{age}")
if __name__ == '__main__':
    h_004(age=18,name='哈哈哈')#实参数

位置参数必须出现在关键字参数前,关键字参数与关键字参数之间是没有顺序的

def h_004(name,age,x):#形参
    print(f"我的名字是{name},今年{age},性别{x}")
if __name__ == '__main__':
    h_004('哈哈哈',x='男',age=18)

三:缺省参数(站在实参的角度)

定义:在定义参数的时候有默认值
注意事项:位置参数必须在默认参数之前,否则会报错,包括函数定义和调用

#
def h_004(name,age=18):#形参
    print(f"我的名字是{name},今年{age}")
if __name__ == '__main__':
    h_004('哈哈哈')#当实参没有传值就直接读取形参,
def h_004(name,age=18):#形参
    print(f"我的名字是{name},今年{age}")
if __name__ == '__main__':
    #test_002()
    h_004('哈哈哈',age=20)#当实参有值就读取实参

四:不定长参数(定义函数的时候使用)

第一种:*args以元组的形式存在,位置参数的合集

def info3(*args):#*是解包的含义
    print(args)
if __name__ == '__main__':
    info3(1,2,3)

第二种:**kwargs以字典形式传参,关键字参数的合集

def info4(**kwargs):
    print(kwargs)
if __name__ == '__main__':
    info4(a=1,b=2,c=3)

函数调用

跨py文件调用(a.py调用b.py文件的函数c)
方法1:

import b
b.c()

方法2:

from b import c
c()

if name == ‘main’:原理
本文件调用时候:name == ‘main
其他文件(a文件调用b文件)调用时:name ==当前(b)文件名称
这就是为什么 if name == 'main’后面写的代码,当其他文件调用时不会生效的原因

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值