Python基础入门笔记: 函数
函数
以下是一些你可能使用过的函数示例:
判断数据类型:type(str)
字符串类型数据转为整数型:int(str)
...
复制代码
按照规则不难找到。所谓在Python中使用函数,就是把要处理的对象放在名字后面的括号里就可以了。简单来说,函数就是这样使用的。你可以把东西塞进去以获得治疗结果。 Python 中还有其他这样的函数:
以 Python 3.5 版本为例,这样的函数有 68 个。它们被称为内置函数。这里的内置是指安装Python后就可以使用这些功能。
2.1 函数格式
定义函数的格式:
其中有 注: 函数缩进之后的语句称为语句块。缩进是为了表名语句的逻辑和从属关系。缩进的问题是不能忽视的,否则代码将无法成功运行,所以这里需要特别注意。 ? 、base_down 和高度。这种传递参数的方法称为位置参数。 ②关键字参数:当你调用函数时,你可以在每个参数名称后面分配一个我们想要发送的值,例如当你调用fun1函数时: 看下图: ③变长参数 有时在设计函数接口时,我们可能需要变长参数。也就是说,我们无法提前确定要提交的参数数量。 Python提供了元组方法来接受未直接定义的参数。该方法在参数前面添加一个星号 输出结果: 从输出结果可以看出, 变长参数也支持关键参数。未定义的关键参数将被放入字典中。此方法是在参数前面加上 输出结果: 通过上面的例子和本例的对比,我们可以知道 ④ 只接受关键字参数 关键字参数使用方便,不易出现参数错误。所以有时我们定义的函数希望使用关键字参数来传递某些参数。此时我们应该做什么呢?这种效果可以通过将所需的关键字参数放在特定的 ,如果你可以看穿年龄 ——答案是肯定的。 Python 使用 lambda 创建匿名函数,也就是说,您不再使用 匿名函数主要有以下性质: 基本语法: 示例: 输出结果:3Alough♿no 该表达式允许您定义简单的功能,但用途有限。只能指定单个表达式,其值就是最终的返回值。即不能包含其他语言特性,包括多语句、条件表达式、迭代、异常处理等。 在匿名函数中,有一个特殊的问题需要注意。比如把上面的例子改一下: 你觉得结果会是什么?第一个输出是101,第二个是10001,结果不是,输出结果是这样的: 这主要是因为lambda表达式中的num2是一个自由变量,它的值是在运行时绑定的,而不是定义的。它是当时绑定的,与函数的默认值参数定义不同。因此,遇到这种情况建议使用第一种解决方案。 作者:Jaybodef
和返回关键字。
, fun1(a=1, b=2, c =3 )
。 *
。如果调用函数时没有指定参数,则为空元组。我们也不能将无名变量传递给函数。例如:def print_user_info( name , age , sex = '男' , * hobby):
# 打印用户信息
print('昵称:{}'.format(name) , end = ' ')
print('年龄:{}'.format(age) , end = ' ')
print('性别:{}'.format(sex) ,end = ' ' )
print('爱好:{}'.format(hobby))
return;
# 调用 print_user_info 函数
print_user_info( '小明' , 25, '男', '打篮球','打羽毛球','跑步')
复制代码
昵称:小明 年龄:25 性别:男 爱好:('打篮球', '打羽毛球', '跑步')
复制代码
* hobby
是一个可变参数,hobby实际上是一个元组。 **
。将上面的例子改成如下: def print_user_info( name , age , sex = '男' , ** hobby ):
# 打印用户信息
print('昵称:{}'.format(name) , end = ' ')
print('年龄:{}'.format(age) , end = ' ')
print('性别:{}'.format(sex) ,end = ' ' )
print('爱好:{}'.format(hobby))
return;
# 调用 print_user_info 函数
print_user_info( name = '小明' , age = 25 , sex = '男', hobby = ('打篮球','打羽毛球','跑步'))
复制代码
昵称:小明 年龄:24 性别:男 爱好:{'hobby': ('打篮球', '打羽毛球', '跑步')}
复制代码
* hobby
是一个可变参数,hobby其实是一个元组(原祖),** hobby
是关键字参数,hobby是dict(字典)。 *
参数或单个*
后面来实现,例如:def print_user_info( name , *, age, sex = '男' ):
# 打印用户信息
print('昵称:{}'.format(name) , end = ' ')
print('年龄:{}'.format(age) , end = ' ')
print('性别:{}'.format(sex))
return;
# 调用 print_user_info 函数
print_user_info( name = '小明' ,age = 25 , sex = '男' )
# 这种写法会报错,因为 age ,sex 这两个参数强制使用关键字参数
#print_user_info( '小明' , 25 , '男' )
print_user_info('小明',age='22',sex='男')
复制代码
sex
如果关键字参数不适用,会报错。 ? def
语句的默认形式来定义函数。 def
简单得多。 lambda [arg1 [,arg2,.....argn]]:表达式
sum = lambda num1 , num2 : num1 + num2;
print( sum( 1 , 2 ) )
复制代码
num2 = 100
sum1 = lambda num1 : num1 + num2 ;
num2 = 10000
sum2 = lambda num1 : num1 + num2 ;
print( sum1( 1 ) )
print( sum2( 1 ) )
复制代码
10001
10001
复制代码
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。