为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕妹3146593 2021-11-23 19:50:52
所以我试图从不同目录中的文件中获取大量变量,而不仅仅是复制和粘贴,因为这很便宜,并且需要编辑使用该组变量的所有文件。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?
查看完整描述

1 回答

?
慕运维8079593

TA贡献1876条经验 获得超5个赞

如果D:/Tiller OS/garden/在你的路径上,你可以只做from memId import mem11等等。在 Python 中导入时,无论是函数、类还是其他对象都无关紧要。


但是,如果memId.py包含的只是这些变量的列表,我同意@melpomene 的观点,您最好使用不同的格式来存储这些变量。例如,您可以使用TOML文件。您上面的格式已经是有效的 TOML,因此您只需将其重命名为memId.toml,然后prog.py您就可以执行类似的操作


import toml

mem_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 需要更改文件的格式。


查看完整回答
反对 回复 2021-11-23
  • 1 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信