• 技术文章 >常见问题

    在函数内部可以通过什么关键字来定义全局变量?

    烟雨青岚烟雨青岚2020-07-13 17:50:55原创6153

    在函数内部可以通过global关键字来定义全局变量。global表示全局变量,用于改变函数外部的变量;全局变量既可以是某对象函数创建,也可以是在本程序任何地方创建;全局变量是可以被本程序所有对象或函数引用的。

    在函数内部可以通过global关键字来定义全局变量。

    global 是表示全局变量,当函数中要改变函数外面的变量时候需要用全局变量global来表示

    全局变量既可以是某对象函数创建,也可以是在本程序任何地方创建。全局变量是可以被本程序所有对象或函数引用。

    global使用

    对于list类型: 改变第一个和最后一个字母

    newName = "xiaoming"lst4 = list(newName)def change1():
        lst4 = ['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']
    change1()
    print(lst4)def change2():
        global lst4
        lst4 = ['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']
    change2()
    print(lst4)

    结果分别为:

    ['x', 'i', 'a', 'o', 'm', 'i', 'h', 'g']
    ['g', 'i', 'a', 'o', 'm', 'i', 'h', 'x']

    对于string类型:

    name3 = "xiaoming"def change3():
        name3 = "giaominx"change3()
    print(name3)def change4():
        global name3
        name3 = "giaominx"change4()
    print(name3)

    结果:

    xiaoming
    giaominx

    对于int型:

    i = 3def increase():
        global i
        i = 4increase()
    print(i)

    结果:4

    总结:
    1、当想要改变函数外部的变量的时候需要在函数中申明函数为全局变量 global

    2、change1 和 change3中的lst4 、 name3其实不是函数外面定义的变量,是函数中重新定义的一个新的函数

    global 和 this 的区别
    1、 在Python中global指的是全局变量,只有指定后才表示同一变量(特殊情况:当变量为引用数据类型,在改变其值的时候也可以表示同一变量,如swap1),当要改变外部变量时候使用

    2、 在java中this指的是成员变量,不需要指定就已经表示为同一变量,当函数内变量和成员变量重名的时候为了区分使用

    3、相比较而言,java的灵活性更高,但是容易在函数中篡改数据值,因此定义成员变量需要谨慎 Python不用担心命名相同的情况,但是改全局变量更为复杂

    更多相关知识,请访问 PHP中文网!!

    以上就是在函数内部可以通过什么关键字来定义全局变量?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:全局变量 关键字
    上一篇:ppt播放时鼠标点击右键没反应怎么办? 下一篇:wps中如何对比两个pdf文件的不同?
    大前端线上培训班

    相关文章推荐

    • C语言中在main函数中定义的变量是全局变量么• 小程序中wepy-redux的使用以及存储全局变量• php常用的超全局变量有哪些• php超全局变量的作用是什么

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网