在Python中存储密钥和密码的最佳方法是什么

3 投票
3 回答
3662 浏览
提问于 2025-04-15 12:50

我有一个小的Python程序,它使用了一个谷歌地图的API密钥。现在我准备把我的代码提交上去,但我不想把这个密钥放在SVN里。

在标准的PHP应用中,通常会把密钥、数据库密码和其他特定于应用的配置放在LocalSettings.php文件里。那在Python中,有没有类似的文件或位置,程序员们通常会去找并修改呢?

3 个回答

1

任何路径都可以通过一个通用的方法来引用用户的主目录,这个方法就是使用波浪号(~)来表示主目录。你可以用 os.path.expanduser() 这个函数来实现,具体用法如下:

appdir = os.path.join(os.path.expanduser('~'), '.myapp')
4

用户需要自己设置一个秘密钥匙。配置文件是存放这个信息的好地方。

你有几种选择来创建配置文件。

  1. 可以使用 ConfigParser 来读取配置文件。

  2. 也可以用一个简单的Python模块作为配置文件。你只需用 execfile 来加载那个文件里的值。

  3. 或者你可以自己发明一种配置文件的格式,然后解析它。

3

不,没什么固定的地方。在Windows系统上,通常会在这个目录下:os.path.join(os.environ['APPDATA'], 'appname'),而在Unix系统上,通常是在这个目录:os.path.join(os.environ['HOME'], '.appname')

撰写回答