python中的变量问题

一、全局变量

声明在函数外部的变量

所有人都可以使用的
从声明的地方开始~当前文件中所有的位置都能使用这个变量

二、局部变量

声明在函数内部

只有当前函数可以使用的变量,除了函数谁都不能使用

例子
jobs = "爬虫开发工程师"#声明一个全局变量

def eat():
    food = "大杂菜"#定义一个局部变量
    print("局部变量:",food)
    print("全局变量:",jods) 
#   执行函数中的代码
eat()
print("局部变量:",food)#执行时出错,执行不出来,因为出了函数不能调用
print("全局变量:",jods)
问题:如果函数中要使用全局变量:应该怎么做?

(1)如果函数中只是查询使用全局变量的值:直接使用
(2)如果函数中要修改全局变量的值:global 变量名称

函数中global的意义:

1.表示在函数中要使用指定名称的全局变量
2.表示在函数中声明一个全局变量

例子
name = "jerry"
print("函数外部查询变量:",name)
def test()
    global name #声明在函数中要使用全局变量name
    global msg #在函数中声明定义了一个全局变量msg
    print("函数内部查询变量:",name) #jerry
    print("函数内部操作变量")
    age = 18
    print("函数中的局部变量:",age)
    name = "tom"
    msg = "hello 函数中的全局变量"
test()
print("这里再次打印全局变量")#tom
print(msg)
执行结果
函数外部查询变量: jerry
函数内部查询变量: jerry
函数内部操作变量
函数中的局部变量: 18
这里再次打印全局变量: tom
hello 函数中的全局变量
注意:>>>1.一个局部变量name必须先声明再使用变量的数据,再修改>>>>2.函数中如果定义了和全局变量名称一样的变量~默认函数中的变量是重命名的局部变量
重要:在项目开发过程中,除了公共数据,其他的变量,尽量使用局部变量,避免使用全局变量

你可能感兴趣的:(python中的变量问题)