Python:列出子目录中的导入选项,然后导入其中一个[重复]
Posted
技术标签:
【中文标题】Python:列出子目录中的导入选项,然后导入其中一个[重复]【英文标题】:Python: list import options in subdirectory, then import one of them [duplicate] 【发布时间】:2015-09-09 02:45:39 【问题描述】:我正在制作一个可以与多个故事模块一起使用的游戏引擎。我想将故事保存在子目录中,并使用单个 PLAY.py
文件来允许用户选择其中一个。
到目前为止,我已经能够使用这个简单的代码来获取所有故事模块的列表:
import glob
stories = glob.glob( ./stories/ds_*.py )
然后我使用 for 循环和格式语句为用户列出选项。问题是我不知道如何使用生成的字符串来实际导入任何内容。也许 glob 不是最好的解决方案?
【问题讨论】:
***.com/questions/67631/…的可能重复 【参考方案1】:只需列出故事目录中的文件,然后打开用户选择的文件:
from os import listdir
from os.path import isfile, join
import imp
stories_path = 'path/to/modules'
# Put in stories all the modules found:
stories = [f for f in listdir(stories_path ) if isfile(join(stories_path,f))]
# Let the user select one...
selected = stories[xx]
# Import it:
story = imp.load_source('module.name', selected)
【讨论】:
以上是关于Python:列出子目录中的导入选项,然后导入其中一个[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Python导入并运行位于不同目录中的python脚本[重复]