全局变量与局部变量
1.什么是全局变量
在globals中的变量,都是全局变量,全局变量的作用域就是整个程序
NAME = 'alex'
def global_test(): name = 'alex' def local_test():
name = 'jack' global_test()
print(globals())
print("__name__:", __name__)
print('__doc__:', __doc__)
print('__cached__', __cached__)
print('__file__',__file__)
print('__loader__', __loader__)
print('__spec__', __spec__)
print('__package__', __package__)
print('__builtins__', __builtins__) ###############################
{'__builtins__': <module 'builtins' (built-in)>, '__file__': 'D:/PycharmProjects/fullstack/homework_oneday/Gloab.py', '__name__': '__main__', '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000000000B08AC8>, '__doc__': None, '__cached__': None, '__package__': None, 'NAME': 'alex', '__spec__': None, 'global_test': <function global_test at 0x0000000000B70048>}
__name__: __main__
__doc__: None
__cached__ None
__file__ D:/PycharmProjects/fullstack/homework_oneday/Gloab.py
__loader__ <_frozen_importlib_external.SourceFileLoader object at 0x0000000000B08AC8>
__spec__ None
__package__ None
__builtins__ <module 'builtins' (built-in)>
2.什么是局部变量
顾名思义就是只能在局部可以执行的变量,在子程序中定义的变量就称为局部变量,
局部变量的作用域是定义该变量的子程序
3.当全局变量与局部变量同名时:
在定义局部变量的子程序中,局部变量生效,在其他地方全局变量生效
4.定义全局变量和局部变量的命名规法
全局变量变量名用大写,局部变量变量名用小写
5.python内置方 1 #python标准异常
'ArithmeticError' # 计算错误,算法错误
'AssertionError' # 断言错误,常用于测试 'AttributeError' # 属性错误
'BaseException', # 基本异常
BlockingIOError' # 阻塞错误
'BrokenPipeError' # 管道破裂错误
'BufferError' # 缓冲区错误
'BytesWarning', # 字节警告
'ChildProcessError', # 子进程错误
'ConnectionAbortedError' # 连接终止错误
'ConnectionError', # 连接错误
'ConnectionRefusedError' # 连接拒绝错误
'ConnectionResetError', # 连接重置错误
'DeprecationWarning' # 废弃警告
'EOFError' # 文件终止错误
'Ellipsis' # 省略错误
'EnvironmentError' # 环境错误
'Exception' # 异常
'False' # 假
'FileExistsError' # 文件存在 错误
'FileNotFoundError' # 文件不存在 错误
'FloatingPointError' # 浮点指针错误
'FutureWarning' # 关于构造将来会有改变的警告
'GeneratorExit' # 生成器发生异常来通知退出
'IOError' #输入/输出操作失败
'ImportError' # 导入模块/对象失败
'ImportWarning' # 导入模块/对象警告
'IndentationError', # 缩进错误
'IndexError' # 索引错误,序列中没有该索引
'InterruptedError' # 被中断的错误
'IsADirectoryError' # 是一个目录错误
'KeyError' # 映射中没有这个键
'KeyboardInterrupt' # 用户终端执行(通常输入的是^c)
'LookupError' # 无效数据查询基类
'MemoryError' # 内存溢出错误
'NameError' # 名字错误
'None' # 空值
'NotADirectoryError' # 不是目录错误
'NotImplemented' # 方法没有实现
'NotImplementedError' # 尚未实现的方法
'OSError' # 操作系统错误
'OverflowError' # 旧的关于自动提升为长整型(long)的警告
'PendingDeprecationWarning' # 关于特性将会被废弃的警告
'PermissionError' # 权限错误
'ProcessLookupError' # 进程获取错误
'RecursionError' # 递归错误
'ReferenceError' # 弱引用试图访问已经垃圾回收了的对象
'ResourceWarning' # 资源警告
'RuntimeError' # 一般运行时的错误
'RuntimeWarning' # 可疑的运行时的行为警告
'StopAsyncIteration' # 停止异步迭代错误
'StopIteration' # 迭代器没有更多的值
,'SyntaxError' # 语法错误
'SyntaxWarning' # 语法警告
'SystemError' # 系统错误
'SystemExit', # 系统退出
'TabError' # Tab和空格键混用
'TimeoutError' # 时间超时错误
'True' # 真
'TypeError' # 对象类型错误
'UnboundLocalError', # 访问未初始化的本地变量
'UnicodeDecodeError' # Unicode解码时的错误
'UnicodeEncodeError' # Unicode编码时的错误
'UnicodeError' # Unicode相关的错误
'UnicodeTranslateError' # Unicode转换时的错误
'UnicodeWarning', # Unicode警告
'UserWarning' # 用户代码生成警告
'ValueError' # 传入无效的cans
'Warning' # 警告的基类
'WindowsError' # 系统调用失败
'ZeroDivisionError' # 除数为0错误
'__build_class__'
'__debug__'
'__doc__'
'__import__',
'__loader__'
'__name__'
'__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip