在交互模式下只打印用户的变量
print only user's variables in interactive mode
我在python3解释器的交互模式下。
我创建了一些不同数据类型的变量。一段时间后,我想查看我创建的所有变量的列表。这可以通过使用 'dir()' 来完成。
但是 'dir()' 内置函数不仅会打印我创建的变量,还会打印特殊的 python 内置变量:
['annotations', 'builtins', 'doc', 'loader ', 'name', 'package', 'spec']
当然,这在很多情况下都非常有用,但对于初学者来说,这有点烦人。
那么,我怎样才能只打印我的变量呢?
所以我假设你在列出你得到的额外结果时故意遗漏了 Python 的内置 functions/variables 前后的“__”,而不是那个其他奇怪的事情正在发生。在这种情况下,排除它们的最简单方法是这样的:
[val for val in dir() if val.strip('__') == val]
只是不要定义任何以“__”开头或结尾的变量
我在python3解释器的交互模式下。
我创建了一些不同数据类型的变量。一段时间后,我想查看我创建的所有变量的列表。这可以通过使用 'dir()' 来完成。
但是 'dir()' 内置函数不仅会打印我创建的变量,还会打印特殊的 python 内置变量: ['annotations', 'builtins', 'doc', 'loader ', 'name', 'package', 'spec']
当然,这在很多情况下都非常有用,但对于初学者来说,这有点烦人。
那么,我怎样才能只打印我的变量呢?
所以我假设你在列出你得到的额外结果时故意遗漏了 Python 的内置 functions/variables 前后的“__”,而不是那个其他奇怪的事情正在发生。在这种情况下,排除它们的最简单方法是这样的:
[val for val in dir() if val.strip('__') == val]
只是不要定义任何以“__”开头或结尾的变量