zoukankan      html  css  js  c++  java
  • python的层级

    1,当使用global 定义全局变量时,经常会提示:Global variable ‘变量名’  is undefined at the module level

    def test001(self)
        global user_id

    此时发现自己竟然不知道模块级别指的是什么层次

    下边是查询后得到得结果 

    a = '我是模块中的变量a'
    
    def hi():
        a = '我是函数里的变量a'
        print('函数“hi”已经运行!')
    
    class Go2:
        a = '我是类2中的变量a'
        def do2(self):
            print('函数“do2”已经运行!')

    在整个py文件中,非def和class之外得变量,一般在最上放得变量,才是模块变量

    2,如果是在模块中为全局变量为全局变量赋值

    # 定义一个全局变量user_id,但是仍然需要在模块层先定义一个全局变量
    gloabl user_id
    def test001(self):
      globals()['user_id'] = '123'
    def test002(self):
      print(user_id)
  • 相关阅读:
    【JZOJ4244】yi【贪心】
    【JZOJ4244】yi【贪心】
    基本赋值运算符
    自增自减运算符
    字符串的+操作
    算术运算符
    数据类型转换
    键盘输入使用
    基本数据类型长度
    变量
  • 原文地址:https://www.cnblogs.com/wuzhenhu/p/12858095.html
Copyright © 2011-2022 走看看