python DAY_5(2)初识函数与参数

学习内容: 函数与参数
重点:
{1}函数
1.函数的功能:简化代码,提高执行效率
2.函数定义格式
def 函数名()
函数功能语句

(可以加返回值 return x,也可以不加,具体问题具体分析)
3.函数运行后,必须通过调用才能显示数值。不同于主程序编写,函数的数值在操作后仅做保留,必须通过调用操作才能进行显示。
4.函数可以嵌套,具体要看实例,在以后学习中会继续学习。
5.函数的使用
案例开发如下
1)
在这里插入图片描述

在这里插入图片描述

上述是个简单的例子,用于实现数字相加,并显示,我们发现,我们在调用后并没有显示数值,因为我们只进行了加操作,没有将内容显示出来。

2)实现正整数阶乘
在这里插入图片描述

与不用函数作比较,我们发现,如果在同一个界面输出多个结果,如果不用函数,那么每一个数值都需要进行一次操作的编写(简单的复制),但是定义好函数之后,我们就可以随时调用,很方便。
{2}变量
1.从低到高,分别有局部变量,封装变量,全局变量
2.变量作用域的实例

在这里插入图片描述

globa x意味全局变量,x为在全局定义的变量,因为在函数体内定义的变量仅在函数体内使用,超出函数体就无效,而globa则是在函数体内调用全局变量,虽然变量名都是x,但是功能不一样。

在这里插入图片描述
这一个代码输出的结果很特别,分别是5和5,在进行了一次函数操作之后,为什么第二次输出的内容不变呢?
因为在python中参数的传递是要看类型的
有的是不可变的类型,如int ,float,tuple等,他们在函数执行后虽然数值会改变,但本质上x所赋予的值在输出的时候不因函数调用结果的改变而改变,当传递副本给函数时(x进入函数体),函数内的操作不影响函数值。
对于可变类型,list,dict等,他们是地址引用操作,内存操作会影响原始值。

当我们对列表活字典表操作时,如果不想改变其内容,可使用一下两种操作(参考别人的代码)

在这里插入图片描述
第一种时使用l.copy()功能。

在这里插入图片描述

第二种就是用 l[:]类似copy。

在这里插入图片描述

发布了33 篇原创文章 · 获赞 0 · 访问量 708

猜你喜欢

转载自blog.csdn.net/soulproficiency/article/details/103889141
今日推荐