零基础学Python(第十六章 函数·重点)
作者:互联网
本套学习内容共计【22】个章节,每个章节都会有对应的从0-1的学习过程详细讲解,希望可以给更多的人提供帮助。
开发环境:【Win10】
开发工具:【Visual Studio 2019】
本章内容为:【函数】
1、函数是什么【def】?
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
定义一个函数
你可以定义一个由自己想要功能的函数,以下是简单的规则:
- 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
- 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
- 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
- 函数内容以冒号 : 起始,并且缩进。
- return [表达式] 结束函数,选择性地返回一个值给调用方,不带表达式的 return 相当于返回 None。
2、语法与调用
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表):
函数体
判断闰年函数例子:
#isleap的内部函数写法如下:
def isleap(year):
"""Return True for leap years, False for non-leap years."""
return year % 4 == 0 and (year % 100 != 0 or year % 400 == 0)
print(isleap(2000))
3、传递参数
3.1、参数地址变化
在 python 中,类型属于对象,变量是没有类型的:
a=[1,2,3]
a="Runoob"
以上代码中,[1,2,3] 是 List 类型,"Runoob" 是 String 类型,而变量 a 是没有类型,她仅仅是一个对象的引用(一个指针),可以是指向 List 类型对象,也可以是指向 String 类型对象。
可更改(mutable)与不可更改(immutable)对象
在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。
-
不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变 a 的值,相当于新生成了 a。
-
可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。
python 函数的参数传递:
-
不可变类型:类似 C++ 的值传递,如整数、字符串、元组。如 fun(a),传递的只是 a 的值,没有影响 a 对象本身。如果在 fun(a) 内部修改 a 的值,则是新生成一个 a 的对象。
-
可变类型:类似 C++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后 fun 外部的 la 也会受影响
python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说传不可变对象和传可变对象。
python 传不可变对象实例
通过 id() 函数来查看内存地址变化:
def change(a):
print(id(a)) # 指向的是同一个对象
a=10
print(id(a)) # 一个新对象
a=1
print(id(a))
change(a)
3.2、多参数传递
简单四则计算器:
def jia(x,y):
return (x+y)
def jian(x,y):
return (x-y)
def cheng(x,y):
return (x*y)
def chu(x,y):
return (x/y)
X=float(input("请输入X:\n"))
Y=float(input("请输入Y:\n"))
print(jia(X,Y))
print(jian(X,Y))
print(cheng(X,Y))
print(chu(X,Y))
4、return用法
return [表达式] 语句用于退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回None。之前的例子都没有示范如何返回数值,以下实例演示了 return 语句的用法:
# 计算
def sum( arg1, arg2 ):
# 返回2个参数的和."
total = arg1 + arg2
print ("函数内 : ", total)
return total#返回结果,可用变量接收
# 调用sum函数
total = sum( 100, 20 )#接收变量返回的值
print ("函数外 : ", total)
5、总结:
请记住:
- 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
- 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
- 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
- 函数内容以冒号 : 起始,并且缩进。
- return [表达式] 结束函数,选择性地返回一个值给调用方,不带表达式的 return 相当于返回 None。
本课程目录为:
Python初级
1 、开发工具
2 、中文编码
3 、基础语法
4 、变量类型
5 、运算符
6 、条件语句
7 、while循环
8 、for循环
9 、循环控制
10、 循环嵌套
11 、字符串
12 、列表
13 、元组
14、 字典
15 、日期时间
16、 函数(本章)
17 、模块
18 、文件I/O
19 、File方法
20 、异常处理
21 、文件目录
22 、内置函数
欢迎【点赞】、【评论】、【关注】、【收藏】、【打赏】,为推广知识贡献力量。
标签:第十六章,return,函数,la,Python,对象,print,def 来源: https://blog.csdn.net/feng8403000/article/details/113802347