gpt4 book ai didi

python - 如何在不列出每个全局变量的情况下导入大量全局变量? (Python)

转载 作者:太空狗 更新时间:2023-10-30 00:52:00 24 4
gpt4 key购买 nike

DEFINE1 = 1
DEFINE2 = 2
DEFINE3 = 3
...
DEFINE10 = 10

假设一个文件有 10 个全局常量,我想将它们导入到另一个文件中。

有没有更简单的方法来导入所有全局常量而不执行以下操作: from file_one.py import *.我不希望它导入整个文件,只导入全局变量。

from file_one.py import DEFINE1, DEFINE2, DEFINE3, ..............

最佳答案

首先,我认为完全可以像您所做的那样创建很多常量并将它们全部放入 constants.py 文件中,然后执行 from constants import * - 我自己一直这样做。只要我的所有常量都在该文件中定义,当我需要弄清楚 SOME_CONSTANT 的来源时,我就知道该去哪里找。

但我暂时假设您有一个包含很多常量的模块,它们都由大写字母、数字和下划线组成。那时你可以做一些非常骇人听闻的事情,比如

import re, file_one
for name,val in file_one.__dict__.items():
if re.match("[A-Z0-9_]+", name):
globals()[name] = val

我强烈建议不要使用这种 hackery,但这样可以自动导入您定义的常量,而无需单独列出它们。

关于python - 如何在不列出每个全局变量的情况下导入大量全局变量? (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6928629/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com