在Python中存储密钥和密码的最佳方法是什么
我有一个小的Python程序,它使用了一个谷歌地图的API密钥。现在我准备把我的代码提交上去,但我不想把这个密钥放在SVN里。
在标准的PHP应用中,通常会把密钥、数据库密码和其他特定于应用的配置放在LocalSettings.php文件里。那在Python中,有没有类似的文件或位置,程序员们通常会去找并修改呢?
3 个回答
1
任何路径都可以通过一个通用的方法来引用用户的主目录,这个方法就是使用波浪号(~)来表示主目录。你可以用 os.path.expanduser()
这个函数来实现,具体用法如下:
appdir = os.path.join(os.path.expanduser('~'), '.myapp')
4
用户需要自己设置一个秘密钥匙。配置文件是存放这个信息的好地方。
你有几种选择来创建配置文件。
可以使用
ConfigParser
来读取配置文件。也可以用一个简单的Python模块作为配置文件。你只需用
execfile
来加载那个文件里的值。或者你可以自己发明一种配置文件的格式,然后解析它。
3
不,没什么固定的地方。在Windows系统上,通常会在这个目录下:os.path.join(os.environ['APPDATA'], 'appname')
,而在Unix系统上,通常是在这个目录:os.path.join(os.environ['HOME'], '.appname')
。