kyo*_*kyo 1 python configuration environment-variables
我的文件.env文件包含5行
DB_HOST=http://localhost/
DB_DATABASE=bheng-local
DB_USERNAME=root
DB_PASSWORD=1234567890
UNIX_SOCKET=/tmp/mysql.sock
Run Code Online (Sandbox Code Playgroud)
我想编写python来获取DB_DATABASE的值,
我想要这个bheng-local
我会用
import linecache
print linecache.getline('.env', 2)
Run Code Online (Sandbox Code Playgroud)
但是有些人可能会更改cofigs的顺序,这就是为什么行缓存不是我的选择。
我不确定如何只检查某些字符串,但要检查整行,并在后面获取值=。
我有点卡在这里:
file = open('.env', "r")
read = file.read()
my_line = ""
for line in read.splitlines():
if line == "DB_DATABASE=":
my_line = line
break
print my_line
Run Code Online (Sandbox Code Playgroud)
有人可以在这里给我一点推动力吗?
小智 6
将您的 .env 修改为
[DB]
DB_HOST=http://localhost/
DB_DATABASE=bheng-local
DB_USERNAME=root
DB_PASSWORD=1234567890
UNIX_SOCKET=/tmp/mysql.sock
Run Code Online (Sandbox Code Playgroud)
Python代码
#!/usr/local/bin/python
import configparser
config = configparser.ConfigParser()
config.read('test.env')
print config.get('DB','DB_DATABASE')
Run Code Online (Sandbox Code Playgroud)
输出:
本地
阅读https://docs.python.org/3/library/configparser.html