如何从不同目录中的不同文件中获取变量到python文件中

所以我试图从不同目录中的文件中获取大量变量,而不仅仅是复制和粘贴,因为这很便宜,并且需要编辑使用该组变量的所有文件。


D:/Tiller OS/garden/memId.py:


mem11 = "D:/Tiller OS/memory/mem1/mem1-1.mem"

mem12 = "D:/Tiller OS/memory/mem1/mem1-2.mem"

mem13 = "D:/Tiller OS/memory/mem1/mem1-3.mem"

mem21 = "D:/Tiller OS/memory/mem2/mem2-1.mem"

mem22 = "D:/Tiller OS/memory/mem2/mem2-2.mem"

mem23 = "D:/Tiller OS/memory/mem2/mem2-3.mem"

mem31 = "D:/Tiller OS/memory/mem3/mem3-1.mem"

mem32 = "D:/Tiller OS/memory/mem3/mem3-2.mem"

mem33 = "D:/Tiller OS/memory/mem3/mem3-3.mem"

memro1 = "D:/Tiller OS/memory/romem/memro-1.mem"

memro2 = "D:/Tiller OS/memory/romem/memro-2.mem"

memro3 = "D:/Tiller OS/memory/romem/memro-3.mem"

我如何将所有这些信息放入一个文件中D:/Tiller OS/programs/prog.py?


慕妹3146593
浏览 230回答 1
1回答

慕运维8079593

如果D:/Tiller OS/garden/在你的路径上,你可以只做from memId import mem11等等。在 Python 中导入时,无论是函数、类还是其他对象都无关紧要。但是,如果memId.py包含的只是这些变量的列表,我同意@melpomene 的观点,您最好使用不同的格式来存储这些变量。例如,您可以使用TOML文件。您上面的格式已经是有效的 TOML,因此您只需将其重命名为memId.toml,然后prog.py您就可以执行类似的操作import tomlmem_path = "D:/Tiller OS/garden/memId.toml"mems = toml.load(mem_path)mems然后将是一本字典,您可以mem11像mems["mem11"]其他人一样访问。toml不在标准库中,因此pip install toml如果您没有它,则需要。如果您不想要,您可以只使用 JSON 文件;json在标准库中。但是,我认为 TOML 比 JSON 更好,并且 JSON 需要更改文件的格式。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python