0

私の目的は、次のようなテキスト ファイルを読み取ることです。

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 行目を変更して、新しいファイルに書き込もうとしています。しかし、それは機能していません。

4

0 に答える 0