Python函数的学习内容,咱们更新了很多,今天我们继续带来Python函数的返回值和作用域,深化大家的函数理解,如果有什么不准确的地方,请大佬批评指正,咱们共同进步。 1.return语句 函数返回值的定义:函数里面的return语句 + 值,表示函数的返回值,可以在调用函数之后通过变量进行接收。 不带参数值的return语句返回None。 举例,自定义一个相加函数,返回最后的值: 如果没有return会怎样? 没有return会返回None。 2.return和print的区别 其实区别很简单,print()是python的一个内置函数(内置函数专题会在后面讲解),作用就是打印。而return是将函数中运行后的一个值返回,具体这个值是多少,要看return的值是谁。 可以看到直接调用函数运算会得到打印值的结果,但去打印函数的返回值结果是None,更一步说明没有return的函数返回值为None。这也是为什么去获取append时返回是None。 可以看到append这里没有返回值。 而字符串方法strip()是有返回值的,返回的是列表类型的值。 3.遇到return会终止 函数遇到return,就会终止运行。函数的return,相当于循环里的break,看到就终止。 可以看到当函数里有if语句时,没有执行的return不会终止函数,直到遇到return时才会终止,并返回值。 4.return语句总结 所以对于函数来说,return语句是控制函数具体的执行,遇到return就终止函数下面的程序。 一个程序的所有的变量并不是在哪个位置都可以访问的。访问权限决定于这个变量是在哪里赋值的。 变量的作用域决定了在哪一部分程序你可以访问哪个特定的变量名称。 可以把作用域这么去理解:函数相当于一个盒子,盒子里面的和盒子外面是两个世界。通过作用域的概念可以把变量分为两种: 一种就是局部变量(盒子里面的),另一种就是全局变量(盒子外面的)。 1.局部变量 局部变量:函数里面的变量。 这里的c、a、d都在函数里面,所以都称为局部变量。 2.全局变量 全局变量:函数外面的变量。 虽然c都是c,但表示的是不一样的。除了名字一样,其他都不一样。这里打印的c就是全局变量的c。 3.作用域里的坑 局部变量和全局变量获取和修改: 既然局部作用域能获取全局变量,不能修改全局变量,那如何才能在局部变量中修改全局变量呢? 4.global关键字 globa语句就是用来局部变量修改全局变量,global就是声明是全局变量。 global c 就是声明c是全局变量,可以在函数里修改全局变量c。 如果不加global关键字是不能在函数里修改的: global关键字注意事项 —— 不要轻易使用global关键字 其实不难理解,这是因为当一个文件里函数特别多的话(10个,20个或更多的函数),某个函数里加global关键字修改了全局变 量后,会不清楚哪个函数造成的,导致代码维护起来很麻烦。 所以如果非要用要global关键字,一定要确保能够控制它,知道在哪里修改才行,否则最好轻易不要使用。 前言
Python函数的返回值
def add_plus(a,b): '''添加 ''' c = a + b return c
def add_plus(a,b): '''添加 ''' c = a + b
def add_plus(a,b): '''添加 ''' c = a + b print(add_plus(2,6))
None
def add_plus(a,b): '''添加 ''' c = a + b print(c) add_plus(1,8) print(add_plus(1,8))
9 None
my_list1 = ['1','2'] a = my_list1.append('4') print(a)
None
def append(self, *args, *kwargs): # real signature unknow Append object to the end of the list. pass
def strip(self,*args, *kwargs): # real signature unknown Return a copy of the string with leading and trailing whitespace remored. If chars is given and not None, remove characters in chars instead. pass
def add(a,b): if a > 100: return a + b elif a == 100: return a * b else: return a - b print(add(120,300))
420
函数的作用域
def add_plus(a,b): '''添加 ''' c = a + b print(c)
c = 3 def add_plus(a,b): '''添加 ''' c = a + b print(c) print(c)
c = 3 def add_plus(a,b): '''添加 ''' global c c = c + a + b return c print(c) print(add_plus(1,2)) print(c)
3 6 6
UnboundLocalError: local variable 'c' referenced before assignment
码字不易,希望大家多多评论转发啊,顺便给小编来一波关注啊~
另外,小编为大家整理了一些学习Python函数返回值和作用域的学习资料,需要的小伙伴们赶紧行动了啊,老规矩,转发+关注后私信并回复【学习】来免费领取吧~~~
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算