Python函数(三)-局部变量

  • 全局变量

全局变量在函数中能直接访问

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

name = ‘John‘

def test():
    print(name)

test()

运行结果

但是全局变量的值(数字,字符串)不会被函数修改

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

name = ‘John‘

def test(name):
    print("before change",name)
    name = ‘Jack‘
    print("after change",name)

test(name)
print(name)

运行结果

name变量在函数内被修改过,只在函数内有效,不影响全局变量的值,最后打印的全局变量的值还是不变

函数可以修改全局变量定义的列表,字典,集合

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

list_1 = [‘Python‘,‘php‘,‘java‘]
dict_1 = {‘name‘:‘John‘,‘age‘:22}
set_1 = {‘Chinese‘,‘Art‘,‘Math‘}

def change():
    list_1[1] = ‘asp‘
    dict_1[‘name‘] = ‘Jack‘
    set_1.pop() #随机删除一个值
    print(list_1)
    print(dict_1)
    print(set_1)

print(list_1)
print(dict_1)
print(set_1)
print("----------------+---------------")
change()
print("--------------After-Change--------------")
print(list_1)
print(dict_1)
print(set_1)

运行结果

全局变量里的列表,字典,集合都在函数内被修改了

  • 局部变量

局部变量就是在函数内定义的变量

直接定义一个局部变量

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

def test():
    name = ‘John‘
    print(name)

test()
print(name)

运行结果

函数内的局部变量函数外部访问不了,只能在函数内部调用

如果想让局部变量跟全局变量一样可以全局调用,需要用global关键字

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

def test():
    global name #把局部变量name设置为全局变量
    name = ‘John‘
    print(name)

test()
print(name)

运行结果

函数外也能访问到函数内定义的变量了

原文地址:https://www.cnblogs.com/sch01ar/p/8395176.html

时间: 2024-10-02 03:29:49

Python函数(三)-局部变量的相关文章

Python函数(三)

递归函数 在函数内部,可以调用其他函数,如果一个函数的内部调用了自己本身,那么这个函数就是递归函数. 什么?函数还可以自己调用自己?那不是一个死循环吗?请看下例: # 求1-100的和 def sum_num(n): result = 0 for i in range(1, n+1): result += i return result sum_num(100) 会不会感觉很繁琐,如果使用递归函数来实现会不会简单些? def sum_num(n): if n <= 0: return 0 ret

python函数三 (装饰器)

一.函数名(学名:第一类对象) 函数名本质上就是函数的内存地址.通俗点就是特殊的普通变量 def func(): print(111) func() print(func) # 结果: # 111 # <function func at 0x00000150713F6048> 1.可以被引用(即可以赋值给其他变量) def func(): print('in func') f = func f() # 结果: # in func 2.可以被当作容器类型的元素 def func(): print

【Python之旅】第三篇(一):Python函数

说明: 使用函数可以使程序实现功能模块化,大大简洁我们的程序,这里主要讨论Python中函数的下列内容: 1.函数定义与函数参数 2.局部变量和全局变量 3.函数默认参数和关键参数 4.*Args和**Kargs 因为函数部分内容跟C语言中的很多内容都十分相似,所以会结合C语言来进行对比学习. 1.函数定义与函数参数 --基本格式1:不参参数 ·定义: def sayHi():     print "Hello!" ·调用: >>> sayHi() Hello --基

PYTHON 函数局部变量和全局变量

有这样一段PYTHON代码,从事C语言开发的人都知道,如果定义了全局变量,而函数内没有定义同名的函数变量的话,那么在函数内对该变量的赋值就是对全局变量空间数值的修改, 然后在PYTHON中却不尽相同,在python中的函数中,如果没有明确声明是全局变量,那么python就会为函数创建局部变量,所以函数中操作的变量也是局部变量 count = 5 def myfun(): count = 10 print(count) myfun() print(count) 打印的结果如下 那么如何在函数中修改

第三篇:python函数

1.python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这被叫做用户自定义函数. 2.函数分类 1.内置函数 2.自定义函数 3.为什么要定义函数 函数即变量,变量必须先定义后使用,未定义而直接引用函数,就相当于在引用一个不存在的变量名 代码演示? 4.定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以

python函数-------python2.7教程学习【廖雪峰版】(三)

任务: 看完函数这一章    已完成 2017年6月8日16:23:491.函数的作用:写较少的代码实现较多的功能,可以多次被调用.2.可见,借助抽象,我们才能不关心底层的具体计算过程,而直接在更高的层次上思考问题.3.写计算机程序也是一样,函数就是最基本的一种代码抽象的方式.4.argument是参数的意思.5.比较函数cmp(x, y)就需要两个参数,如果x<y,返回-1,如果x==y,返回0,如果x>y,返回1:6.函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当

python学习三十三天函数匿名函数lambda用法

python函数匿名函数lambda用法,是在多行语句转换一行语句,有点像三元运算符,只可以表示一些简单运算的,lambda做一些复杂的运算不太可能.分别对比普通函数和匿名函数的区别 1,普通的函数用法 def func(): print('aaa') func() 2,匿名函数的用法 f=lambda x,y:x*y m=f(3,5) print(m) 输出结果 15 匿名比较复杂的用法条件判断,匿名函数一般搭配函数内置函数使用 map() 文章来自(www.96net.com.cn) 原文地

python学习三十四天函数高阶函数定义及用法

python函数高阶函数是把函数当成一个变量,传递给函数作为参数,或者函数的返回值里面有函数,都称为高阶函数, 1,把函数作为参数传递 def dac(x,y): return x+y def test(n): print(n) test(dac) 输出结果为 函数类型function 2,把函数做为返回值,也是高阶函数 def test(x,y): return abs,x,y 输出结果为 列表,包含 函数,参数 文章来自(www.96net.com.cn) 原文地址:https://www.

Python 函数对象 命名空间与作用域 闭包函数 装饰器 迭代器 内置函数

一.函数对象 函数(Function)作为程序语言中不可或缺的一部分,但函数作为第一类对象(First-Class Object)却是 Python 函数的一大特性. 那到底什么是第一类对象(First-Class Object)呢? 在 Python 中万物皆为对象,函数也不例外,函数作为对象可以赋值给一个变量.可以作为元素添加到集合对象中.可作为参数值传递给其它函数,还可以当做函数的返回值,这些特性就是第一类对象所特有的. 1.函数身为一个对象,拥有对象模型的三个通用属性:id.类型.和值.