私はmcelog.conf
という名前のファイルが1つあり、私のコードでこのファイルを読んでいます。ファイルの内容はPythonでファイルから行を読み込みます
no-syslog = yes # (or no to disable)
logfile = /tmp/logfile
プログラムはmcelog.conf
ファイルを読み込みますし、no-syslog = yes
は、プログラムは、タグlogfile
をチェックしなければならない場合、no-syslog
タグをチェックするとlogfile
タグを読み込みますです。
line.split(' = ')[1]
しかし、あなたがドキュメントを見たいと思うかもしれません:誰も私は、私はあなたがちょうどあなたがしたい値を取得するために行を分割することができます値/tmp/logfile
with open('/etc/mcelog/mcelog.conf', 'r+') as fp:
for line in fp:
if re.search("no-syslog =", line) and re.search("= no", line):
memoryErrors = readLogFile("/var/log/messages")
mcelogPathFound = true
break
elif re.search("no-syslog =", line) and re.search("= yes", line):
continue
elif re.search("logfile =", line):
memoryErrors = readLogFile(line) # Here I want to pass the value "/tmp/logfile" but currently "logfile = /tmp/logfile" is getting passed
mcelogPathFound = true
break
fp.close()
正規表現グループを試しましたか?または、等号を分割して、本質的にキー値の辞書を作成しますか? –
いいえ、私は正規表現のグループを試していませんが、 '='記号で各行を分割しようとすると、ファイルにいくつかのコメントがあると例外が発生する可能性があります。 @ cricket-007 –
なぜですか?あなたは同じことを言っている両方の答えにコメントしました –