如何在python中编写一个访问特定目录的可移植程序?

时间:2013-08-12 02:11:11

标签: python portability

我有一个我编写的python程序,它需要一个位于我的计算机目录中的文件夹中的特定数据库。

目前我的程序在与找到python脚本的位置相同的位置初始化数据库,我认为这是最好的方法,以便数据库相对于脚本保持“静态”。

我的问题是,有不同的方法吗?也许某种最佳做法?这个概念究竟叫做什么?

这是我第一次为其他人编写一个程序,我有点紧张,可能会在某个地方出现故障。

1 个答案:

答案 0 :(得分:0)

我会使用用户的主文件夹并使用os.path模块。假设您有一个名为myapp的程序和一个名为db.sqlite的数据库。

import os.path
path = os.path.expanduser('~/.myapp/db.sqlite')
然后,

路径将扩展到基于UNIX的系统上的/home/user/.myapp/db.sqlite(对于Mac类似)和C:\ Users \ user \ Application Data \ Roaming.myapp \ db.sqlite (或类似的东西,而不是Windows机器上的东西)。