python中怎样查看已加载的命名空间中所有变量和函数
发布网友
发布时间:2022-04-23 03:05
我来回答
共4个回答
热心网友
时间:2022-04-18 06:15
dir()
不加任何参数,便可查看命名空间内所有的变量名、函数名以及导入的模块的名称
返回的是一个列表
热心网友
时间:2022-04-18 07:33
globals()和locals()函数的返回值是一个字典,包含命名空间的所有变量名和对应的值(比如字符串、字典、列表、函数、模块),globals()是全局命名空间,locals()是局部命名空间,全局指这个模块,局部可以是函数、类、闭包。调用dir()函数传参或者不传,它的返回值就是这俩函数返回值的键组成的列表。
热心网友
时间:2022-04-18 09:07
示例:
import math
help(math)
热心网友
时间:2022-04-18 10:59
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <mole>
f()
File "<pyshell#6>", line 2, in f
a = a+1
UnboundLocalError: local variable 'a' referenced before assignment
首先,在f()这个函数里,a是个局部变量。原因:没加global a这一句。
然后,函数内容一上来就调用了a本身的值。对于python来说,它这时还不知道a是什么呢。
所以,这个错误的意思是说,a作为一个局部变量,没有先声明数值就被引用了,无从查找其值。