赞
踩
局部变量:在函数里面赋值的变量为局部变量、只在本函数内生效
在一个函数里面,局部变量具有最高优先级,
函数可以调用全局变量、
函数外的代码不可以调用函数里的变量
name = "LinYaoHong"
def change_name():
name = "蔺要红" #局部变量
print("在函数里改名",name,id(name)) #id(name)内存地址不同
change_name()
print(name,id(name)) #在全局变量里name的值并没有改,只是再函数里面改
E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/函数局部变量.py
在函数里改名 蔺要红 14329216
LinYaoHong 14261488
#通过内存地址可以看出全局和局部变量的区别
global在函数里修改全局变量、一般不用,了解一下
#global 在函数里修改全局变量
name = "Linyaohong"
def change_name():
global name #global(全局)以后可以修改全局变量
name = "Dingqiaoli"
print(name)
change_name()
print(name)
E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/在函数里全局变量.py
Dingqiaoli
Dingqiaoli
在函数里修改全局变量—列表数据
# -*- coding: UTF-8 -*-
name = ["Lin","Yao","Hong"]
def change_name():
name = ["Ding","Qiao","Li"] #通过重新赋值name全局变量name不会被改变
print(name)
change_name()
print(name)
E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/在函数里修改列表数据.py
['Ding', 'Qiao', 'Li']
['Lin', 'Yao', 'Hong']
# -*- coding: UTF-8 -*-
name = ["Lin","Yao","Hong"]
def change_name():
global name #global以后可以修改全局变量
name = ["Ding","Qiao","Li"]
print(name)
change_name()
print(name)
E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/在函数里修改列表数据.py
['Ding', 'Qiao', 'Li']
['Ding', 'Qiao', 'Li']
#总结:整体列表(内存地址)不可修改,但是里面的元素都可以被修改,
#元祖(元祖本身不可修改,但是里面的列表等可以被修改),字典,列表,集合,对象,类,里的元素都可以被修改
# 字符串、数字 不可以不修改
# -*- coding: UTF-8 -*-
name = ["Lin","Yao","Hong","蔺蔺蔺"]
def change_name():
del name[2] #可以修改列表里的元素,
name[1] = "蔺要红"
print(name)
change_name()
print(name)
E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/在函数里修改列表数据.py
['Lin', '蔺要红', '蔺蔺蔺']
['Lin', '蔺要红', '蔺蔺蔺']
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。