题目:学习使用auto定义变量的用法。
程序分析:python中的变量作用域。
Python 局部变量global,全局变量local ,非局部变量nonlocal ,Enclosing function locals作用域_懒笑翻的博客-CSDN博客
在C中,auto自动存储类型,一般我们很少在程序中显示申明变量为auto类型。因为代码块中的变量缺省情况下就是这种类型,这种类型的变量存放于堆栈中, 也就是说只有程序执行这些代码块时这种自动变量才会被创建,代码块执行结束后自动变量便被释放。 auto int num = 1 也就是说,只有再执行这行代码 auto变量中的num才会存在,这行代码执行结束后,这个auto变量将会自动释放。 我们知道Python不需要申明变量,变量一旦初始化,类型和值便确定了。根据值得类型来确定变量的类型。 在Python中,不存在auto关键字 # import keyword # # print(keyword.kwlist) # print(keyword.iskeyword('auto')) 如果你试图在pycharm中输入auto,编辑器大概会提示你输入autopep8,不要以为这是auto在python中的写法 使用autopep8,以PEP 8规范,自动排版Python代码 autopep8是一个开源的命令行工具,它能够将Python代码自动格式化为PEP8风格。autopep8使用pycodestyle工具来决定代码中的哪部分需要被格式化,这能够修复大部分pycodestyle工具中报告的排版问题。autopep8本身也是一个Python语言编写的工具,我们可以直接使用pip进行安装 没有auto关键字的话,可以使用变量作用域来举例 在python中默认局部变量local 全局变量用global
- def my_global():
- global g
- g = 99
- print('my_global', g)
- n = 11
-
- def my_nonlocal():
- # nonlocal 一般是用在闭包函数中, nonlocal声明的变量在上级局部作用域内,而不是全局定义
- nonlocal n
- n = 22
-
- my_nonlocal()
- print('n', n)
-
-
- my_global()
- print('g', g)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓懒笑翻诚邀你点击下方一起来学习讨论↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓