【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

导读:本篇文章讲解 【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

全局变量是在函数外部定义的变量(没有定义在某一个函数内),所有函数内部都可以使用这个变量。

提示:全局变量是可变的,在其他开发语言中,大多是不推荐使用全局变量的,因为可变范围太大,会导致程序后期不好维护。

一、在函数内部修改全局变量的值

如果在函数中需要修改全局变量,需要使用global关键字进行声明。

global关键字会告诉解释器后面的变量是一个全局变量,再使用赋值语句时,就不会创建局部变量

代码体验:

# 定义一个全局变量num = 99def demo1():    # 希望修改全局变量的值 -- 使用global声明一下变量即可    # global关键字会告诉解释器后面的变量是一个全局变量    # 再使用赋值语句时,就不会创建局部变量    global num    num = 10    print('demo1 ===> %d' % num)def demo2():    print('demo2 ===> %d' % num)demo1()demo2()

执行结果:

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

二、全局变量定义的位置和代码结构

如果在开发中我们使用到了全局变量,应该把全局变量打在代码的什么位置。

为了保证所有的数据都能够正确使用到全局变量,应该将全局变量定义在其他函数的上方。

代码体验1:

# 定义一个全局变量
num = 99


def demo1():
    print(' %d' % num)
    print('%s' % title)
  
    
# 再定义一个全局变量 
title = 'Python自学网'

demo1()

执行结果:

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

代码体验2:

# 定义一个全局变量
num = 99


def demo1():
    print(' %d' % num)
    print('%s' % title)
    print('%s' % name)


# 再定义一个全局变量
title = 'Python自学网'

demo1()

# 再定义一个全局变量
name = 'lily'

执行结果:报错

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

注意:由于全局变量name是在调用函数之后才定义的,在执行函数时,变量还没有定义,所以程序会报错。

代码体验3:正确位置

# 定义一个全局变量
num = 99
# 再定义一个全局变量
title = 'Python自学网'
# 再定义一个全局变量
name = 'lily'


def demo1():
    print(' %d' % num)
    print('%s' % title)
    print('%s' % name)


demo1()

执行结果:

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

代码结构示意图如下:

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

三、全局变量命名的建议

为了避免局部变量和全局变量出现混淆,在定义全局变量时,有些公司会有一些开发要求:如:

全局变量名前应该增加g_ 或者 gl_ 的前缀

提示:具体的要求格式,各公司要求可能会有些差异

代码体验:

# 定义一个全局变量
gl_num = 99
# 再定义一个全局变量
gl_title = 'Python自学网'
# 再定义一个全局变量
gl_name = 'lily'


def demo1():
    # 如果局部变量的名字和全局变量的名字相同
    # PyCharm会在局部变量的下方显示一个灰色的虚线,提示我们修改一个名字
    num = 20

    print(' %d' % num)
    print('%s' % gl_title)
    print('%s' % gl_name)


demo1()

小技巧:如何在修改全局变量名时,之前其他地方使用这个变量名同时被修改?

步骤:选中要被修改的名字 —-》 点击鼠标右键出现下图这个界面,鼠标悬浮在Refactor上 —》点击Rename   ——》在下一个界面上直接修改全局变量名 ——》 点击Refactor即可完成同步修改。

快速调出修改窗口:先须先选中要修改的名字 —-》 按住快捷键 Shift + F6

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

【Python】全局变量详解二(修改全局变量值、定义位置和代码结构、命名建议)

Python教程文章借鉴来源:http://www.wakey.com.cn/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/73342.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!