Python 替换文件中的特定内容

Python 替换文件中的特定内容,python,Python,我有一个包含以下内容的文件 Location=Test; SpaceId=10; TestStationName=<User Input value>; TestStationPreferredHost=TestStationHost; TestStationPool=<User Input value> 此处的值为IND-TEST-50和末尾的XYZ。此值必须随用户输入而更改 注意:TestStationName对于不同的测试机器是不同的 我是这样做的。有没有其他有效

我有一个包含以下内容的文件

Location=Test;
SpaceId=10;
TestStationName=<User Input value>;
TestStationPreferredHost=TestStationHost;
TestStationPool=<User Input value>
此处的值为
IND-TEST-50
和末尾的
XYZ
。此值必须随用户输入而更改

注意:
TestStationName
对于不同的测试机器是不同的

我是这样做的。有没有其他有效的方法来解决这个问题

我使用列表存储数据并更新数据

data1 = []
with open("INFO.txt") as f:
    data = f.readline()
    data1 = data.split(";")

print(data1)

data1[2] = "TestStationName" + "=" + "Value"

data1[4] = "TestStationPool" + "="+ "<Value>"

result = ""
for val in data1:
    result = result + val + ";"

with open("INFO.txt", "a") as f:
    f.write(result)
data1=[]
打开(“INFO.txt”)作为f:
数据=f.读线()
数据1=数据。拆分(“;”)
打印(数据1)
data1[2]=“TestStationName”+”=“值”
data1[4]=“TestStationPool”+“=”+”“
result=“”
对于data1中的val:
结果=结果+val+“;”
打开(“INFO.txt”,“a”)作为f:
f、 写入(结果)
我在末尾用额外的分号获得期望值。

尝试以下方法:

for val in data1:
    result += val + ";"

result = result.rstrip(";")
编辑:更有效的解决方案

result = ";".join(data1)
试试这个:

for val in data1:
    result += val + ";"

result = result.rstrip(";")
编辑:更有效的解决方案

result = ";".join(data1)

您正在使用分号存储
结果
。这就是问题所在,还是其他问题?让我知道。@TonyMontana谢谢你的宝贵评论。我不需要结尾的分号。还有没有其他方法可以使此代码更高效?您正在使用分号存储
结果
。这就是问题所在,还是其他问题?让我知道。@TonyMontana谢谢你的宝贵评论。我不需要结尾的分号。还有没有其他方法可以使代码更高效呢?还有,如果你的问题解决了,请标记它已解决。另外,如果你的问题已解决,请标记它已解决。