私の目的は、次のようなテキスト ファイルを読み取ることです。
DI00 =DI
Logic0 =OFF
Logic1 =ON
DI01 =DI
Logic0 =OFF
Logic1 =ON
DI11まで続きます。このファイルを編集して、次のような新しいテキスト ファイルに書き込みます。
DI00 =DOOR1
Logic0 =Door Open
Logic1 =Door Closed
DI01 =Camera1
Logic0 =CameraOn
Logic1 =CameraOff
私はいくつかのことを試しましたが、何もうまくいかないようです。誰かが私のために 2 分で書くことができる単純なコード ブロックであることはわかっています。主な問題は、同じ行が複数回表示され、毎回異なる編集が必要になることです。ファイルをその場で編集したくないことを覚えておいてください。私は新しいものに書かなければなりません。
ここに私が持っているものがあります:
インポートファイル入力
def IOConfig (サイトの場所、サイト名、timeServer、IP、MAC):
for line in fileinput.FileInput("ik2210_vanilla.txt",inplace=1):
line = line.replace("MOD_LOC=", "MOD_LOC=" + str(siteLocation))
line = line.replace("MOD_NAME=", "MOD_NAME=" + str(siteName))
line = line.replace("TIME_SERVER =", "TIME_SERVER =" + str(timeServer))
line = line.replace("NET_IP =192.168.127.254", "NET_IP =" + str(ip))
line = line.replace("NET_MAC =192.168.127.254", "NET_MAC =" + str(mac))
line = line.replace("Logic0 =OFF", "Logic0 =Door Open")
print line,
IOConfig("David のオフィス", "David のテスト サイト", "10.140.140.999", "192.168.123.456", "00-90-E8-31-D8-44")
ここに余分なコードがありますが、問題は最後の行です。replace はすべての logic0 = Off を置き換えます。新しいファイルへの書き込みを試みる 2 回目の試みを投稿します。
import re
rf = open("ik2210_vanilla.txt", "r")
wf = open("test#1", "w")
lines = rf.readlines()
for lines[2] in lines:
wf.write(str("Logic1 =Door Open"))
wf.write(str(lines))
rf.close()
wf.close()
ここでは、ファイルの 3 行目を変更して、新しいファイルに書き込もうとしています。しかし、それは機能していません。