print(“even”)
else:
print(“odd”)
调用函数的驱动代码
evenOdd(2)
evenOdd(3)
输出
even
odd
Python 支持可以在函数调用时传递的各种类型的参数。让我们详细讨论每种类型。
默认参数
默认参数是一个参数,如果在该参数的函数调用中未提供值,则该参数采用默认值。以下示例说明了默认参数。
演示默认参数的 Python 程序
def myFun(x, y=50):
print("x: ", x)
print("y: ", y)
驱动程序代码(我们只用参数调用 myFun())
myFun(10)
输出
(‘x:’, 10)
(‘y:’, 50)
与 C++ 默认参数一样,函数中的任意数量的参数都可以具有默认值。但是一旦我们有了一个默认参数,它右边的所有参数也必须有默认值。
关键字参数
这个想法是允许调用者使用值指定参数名称,以便调用者不需要记住参数的顺序。
演示关键字参数的 Python 程序
def student(firstname, lastname):
print(firstname, lastname)
关键字参数
student(firstname=‘haiyong’, lastname=‘blog’)
student(lastname=‘blog’, firstname=‘haiyong’)
输出
(‘haiyong’, ‘blog’)
(‘haiyong’, ‘blog’)
可变长度参数
在 Python 中,我们可以使用特殊符号将可变数量的参数传递给函数。有两个特殊符号:
-
*args(非关键字参数)
-
**kwargs(关键字参数)
示例 1:可变长度非关键字参数
用于说明可变数量参数的 *args 的 Python 程序
def myFun(*argv):
for arg in argv:
print(arg)
myFun(‘Hello’, ‘Welcome’, ‘to’, ‘haiyong.site’)
输出
Hello
Welcome
to
haiyong.site
示例 2:可变长度关键字参数
用于说明可变数量关键字参数的 *kwargs 的 Python 程序
def myFun(**kwargs):
for key, value in kwargs.items():
print(“%s == %s” % (key, value))
驱动程序代码
myFun(first=‘haiyong’, mid=‘.’, last=‘site’)
输出
first == haiyong
mid == .
last == site
函数后面的第一个字符串简称为 Document 字符串或Docstring。这用于描述函数的功能。在函数中使用 docstring 是可选的,但它被认为是一种很好的做法。
以下语法可用于打印出函数的文档字符串:
语法: print(function_name.doc)
示例:将 Docstring 添加到函数中
一个简单的 Python 函数来检查 x 是偶数还是奇数
def evenOdd(x):
“”“检查数字是偶数还是奇数的功能”“”
if (x % 2 == 0):
print(“even”)
else:
print(“odd”)
Driver code to call the function
print(evenOdd.doc)
输出
检查数字是偶数还是奇数的功能
函数 return 语句用于退出函数并返回到函数调用者,将指定的值或数据项返回给调用者。
语法: return [表达式列表]
return 语句可以包含一个变量、一个表达式或一个在函数执行结束时返回的常量。如果 return 语句不存在上述任何一项,则返回 None 对象。
示例:Python 函数 return 语句
def square_value(num):
“”“此函数返回输入数字的平方值”“”
return num**2
print(square_value(2))
print(square_value(-4))
输出:
4
16
需要注意的重要一点是,在 Python 中,每个变量名都是一个引用。当我们将变量传递给函数时,会创建对该对象的新引用。Python中的参数传递与Java中的引用传递相同。
例子:
这里 x 是对相同列表 lst 的新引用
def myFun(x):
x[0] = 20
驱动程序代码(注意 lst 在函数调用后被修改)
lst = [10, 11, 12, 13, 14, 15]
myFun(lst)
print(lst)
输出
[20、11、12、13、14、15]
当我们传递一个引用并将接收到的引用更改为其他东西时,传递和接收参数之间的连接就会中断。例如,考虑下面的程序。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python爬虫全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:python)
LXplbmhlaQ,shadow_50,text_Q1NETiBA56iL5bqP5aqb56eD56eD,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python爬虫全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:python)
[外链图片转存中…(img-0qhht8tD-1710975402591)]