首页 > 解决方案 > 使目录在不同计算机上通用(相对?)的方法?

问题描述

我是一名高中生,正在为一个项目制作视频游戏,请原谅我,我对 python/编码很陌生。我认为这将是一件相对容易弄清楚或在网上找到的事情,但我没有任何运气。显然,对于视频游戏,需要使用资产和文件。如何将目录设置为在另一台计算机上运行时可以使用的目录。更多详情如下:

现在我将它设置为 os.chdir(r'C:\Users\User\Desktop\VideoGame'),显然如果在另一台计算机上运行,​​路径会有所不同。我该如何设置它才能找到“VideoGame”文件,然后将其设置为目录。

显然我需要一个目录,以便 python 可以找到我需要的所有文件。但是假设我把我的文件夹和我的代码和我所有的资产放在上面,然后把它放在 U 盘上,然后把它交给我的老师,我怎么能确定他正在运行的 python 可以找到并使用其中的文件文件夹。

标签: pythonpython-3.xdirectory

解决方案


在您澄清之后,我的理解是您希望将所有游戏资产加载到可移动驱动器中。我假设您将在assets文件所在的目录中拥有该文件夹main.py

所以我解决这个问题的方法是首先获取main.py文件的当前工作目录,然后添加assets\到它,然后检查该目录是否真的存在。如果是,则继续操作,否则显示错误信息。

我的解决方案:

import os 
dir_path = os.path.dirname(os.path.realpath(__file__))
dir_path = os.path.join(dir_path, r"assets")
if(os.path.exists(dir_path)):
    # block of code
    print()
else:
    print("assets not found!\ncheck your directory")

如果我再次错过了什么,请随意发表评论。


推荐阅读