一、函数的定义与调用
'''
定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个':'
def 是固定的,不能变,它就是定义函数的关键字
函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。
虽然函数名可以随便起,但我们给函数起名字还是要尽量简短,并能表达函数功能
括号:是必须加的,先别问为啥要有括号,总之加上括号就对了!
注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。
调用:就是 函数名() 要记得加上括号。
'''
return 返回一个值
def count_len(s):
length = 0
for i in s:
length+=1
return length
s = 'abcdefg'
print(count_len(s))
函数的返回值 return
没有返回值,不写return的情况下,会默认返回一个None
只写return,后面不写其它内容,也会返回None,一旦遇到return,结束整个函数
def fun():
return
print(112)
print(fun())
返回多个值,可以返回多个,任意数据类型的值
返回的多个值会以元祖形式返回,也可用多个值来接收
def fun():
return 1,['a',2],{'namet':'alex'},(5,6)
print(fun())
返回多个值用一个变量接收
def get():
return 'a',[2,1],{'name':'alex'}
s = get()
print(s)
返回多个值用多个变量接收
def get():
return 'a',[2,1],{'name':'alex'}
a,b,c = get()
print(a,b,c)
函数的参数
实参与形参
实参:调用函数时传递的'alex'叫做实际参数,因为这个是实际要交给函数的内容,简称实参
形参:定义函数是的name,只是一个变量的名字,被称为形式参数,因为在定义函数时它只是一个形式
表示这里有一个参数,简称形参
传递多个参数:参数可以传递多个,多个参数之间用逗号隔开
def get_info(name):
return name
get_info('alex')
位置参数
1、站在实参角度,按照位置参数
def func(x,y):
if x>y:
return x
else:
return y
print(func(10,20))
2、按照关键字传值
def func(x,y):
if x>y:
return x
else:
return y
print(func(y=2,x=3))
3、位置、关键字形式混着用
def func(x,y):
if x>y:
return x
else:
return y
print(func(2,y=3))
正确用法
问题一:位置参数必须在关键字参数的前面
问题二:对于一个形参只能赋值一次
站在形参角度:位置参数必须传值
def fun(x):
return
print(fun())
TypeError: fun() missing 1 required positional argument: 'x'
默认参数
1、正常使用
使用方法
为什要有默认参数:将变化比较小的值设置成默认值
2、默认参数的定义
def get_info(name,sex='male'):
打印学生信息函数,性别默认为男性
return name,sex
print(get_info('alex'))
print(get_info('taibai','female'))
3、参数陷进:默认参数是一个可变数据类型
def default_param(a,l=[]):
l.append(a)
return l
print(default_param('a'))
print(default_param('b'))
动态参数
'''
动态参数:也叫不定长传参,就是你需要传给函数的参数很多,不定个数,那这种情况下,你就用*args,
**kwargs接收,args是元祖形式,接收除去键值对以外的参数,kwargs接收的只是键值对参数
并保存在字典中
'''
def trans_param(*args,**kwargs):
print(args,type(args))
print(kwargs,type(kwargs))
trans_param('a',1,[2,3],('c','d'),{'name':'alex'},age='male',a=123)
python str format 带有 非科学计数法
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
下一篇:系统间接口监控
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C# Onnx yolov8 竹签计数、一次性筷子计数
C# Onnx yolov8 竹签计数、一次性筷子计数
Image System Text -
MySQL 展BOM取对应顶层料号
概要回顾以前写的项目,发现在规范的时候,还是可以做点骚操作的。假使以后还有新的项目用到了MySQL,那么肯定是要实践一番的。为了准备,创建测试数据表(建表语句中默认使用utf8mb4以及utf8mb4_unicode_ci,感兴趣的读者可以自行搜索这两个配置): CREATE TABLE `student` ( `id` int(11) unsigned NOT NULL AUT
MySQL 展BOM取对应顶层料号 mysql boolean mysql 批量 update 多个条件 数据 MySQL