嘿stackoverflow我需要有关此问题的帮助。我希望能够读取格式如下的文本文件:
test: value1
test2: value2
test3(sometimes included): value3
test: value1
test2: value2
test: value1
test2: value2
test3(sometimes included): value3
您看到test3有时包含在文件中,我希望能够读取它,但又不想使其与文件中的其他值混淆。
只是为了使其完全清楚,我希望能够在python中读取文件并将变量的值放入python中的字符串中。
这是我到目前为止所拥有的(这不是我想要的,因为如果该行没有test3,它将被其他值所破坏)
file = open("output.txt").readlines()
with line in file:
if "test3" in line:
test = find_between(...)
test2 = find_between(...)
test3 = find_between(...)
...
答案 0 :(得分:0)
由于test
和test2
始终存在,因此您不应将它们放入条件块中。还要注意,由于test3
是可选的,因此最好使用None
对其进行初始化,然后在将其用于某物时测试它是否不是None
。
file = open("output.txt").readlines()
with line in file:
test = find_between(...)
test2 = find_between(...)
test3 = None
if "test3" in line:
test3 = find_between(...)
...
if test3 is not None:
do_something(test3)
答案 1 :(得分:0)
我认为您需要重新拆分,代码如下。
重新导入
以open(“ output.txt”,“ r”)作为f:
for line in f:
if "test3" not in line:
continue
items = re.split("[\(\)]", line)
if len(items) > 1:
print(items[1])