这是我第一次编写“项目”(不仅仅是解决单个文件中的练习)。许多.py文件都有从特定路径导入的变量。我还有一个主“运行”文件,我在其中导入我在其他文件中编写的内容并作为一个整体执行项目。
最近我开始在几个不同的机器(家庭,工作,笔记本电脑等)上开展这个项目,并且刚刚开始学习如何使用GitHub。
我的问题是,我如何处理这样一个事实:每次我在不同的机器上打开我的代码时,我都需要改变所有路径以适应新机器,然后在我改变时再将它们改回来在家?我开始为我工作的每个位置编写一个Run文件,以便我的sys.path命令可以正常使用该机器,但它无法解决我的其他模块从特定路径导入变量的问题,这些路径因机器而异。有没有办法解决这个问题,还是我自己如何设置项目的问题?
在一个理想的世界中,只有在我跑步之前我不得不改变一些东西,这取决于我正在研究的机器,但我不知道这是否可行。
我目前的想法是,是否有一些我不知道的命令可以在我的主Run.py文件中设置.py文件中的变量 - 这样我就可以为每台机器创建一个运行文件。
很乐意接受任何建议!不管它是什么,每次在不同的机器上打开它时,它必须比在正确的文件路径中注释更好!
答案 0 :(得分:0)
你应该总是使用相对路径,而不是我认为你有的静态路径。
假设您在索引文件中并且需要访问图像文件夹,则可能需要/users/username/project/images/image.png
相反,你想要../images/image.png
之类的东西,这会告诉你的索引文件向后移动一个文件夹来说出项目的根目录,然后进入我们的图像文件夹等。
相对路径意味着您创建一个文件存在的路径,而不是从头开始的整个路径。
答案 1 :(得分:0)
您需要识别项目中硬编码的所有设置,并使它们相对于当前工作区。这是一个常见问题。
此外,如果您使用的是python,请确保您没有硬编码字符串中文件的路径,而是使用正确的系统API:
os.path.join('file','to','your','ressource')
如果你在unix或windows上,将以不同的方式计算。