gpt4 book ai didi

脚本的 Python 配置文件

转载 作者:太空宇宙 更新时间:2023-11-04 04:56:54 25 4
gpt4 key购买 nike

我在从文件读取配置文件时遇到问题。它看起来很基本,但由于我是 python 新手,所以我遗漏了一些东西。

配置文件如下所示

CCWD_HOME=/batch/ccwd
#Temporary location for daemon job listing
CCWD_TEMP=/tmp
#Directory for job definitions
CCWD_PROD=/batch/PRD

问题是该文件的语法必须保持这种方式。将字符串分配给变量需要引号(“”)。是否有任何简单的方法可以从上面的配置文件中读取变量?例如我有脚本

#!/bin/python
import conf
print CCWD_TEMP

出现这个错误

Traceback (most recent call last):
File "./testconf", line 2, in <module>
import conf
File "/app/test/conf.py", line 6
CCWD_HOME=/batch/ccwd
^
SyntaxError: invalid syntax

最佳答案

您似乎正在尝试导入配置文件。但你不能这样做:import 用于导入 Python 模块,因此你导入的文件应该是有效的 Python,而 CCWD_HOME=/batch/ccwd 不是。这就是语法错误的含义。

您可以使用模块configparser来读取文件,但它要求将设置分组到以方括号中的节名称开头的节中,如下所示:

[MyStuff]
CCWD_HOME=/batch/ccwd
#Temporary location for daemon job listing
CCWD_TEMP=/tmp
#Directory for job definitions
CCWD_PROD=/batch/PRD

如果您无法更改配置文件,则必须自己解析它。

with open("./testconf") as configs:
for config in configs:
if config.startswith("#"):
continue
keyword, value = config.split("=")

关于脚本的 Python 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43951205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com