【发布时间】:2022-06-10 21:02:27
【问题描述】:
我是 python 世界的新手。在这里,我正在寻找有关我的问题的一些建议。我有三个文本文件,一个是原始文本文件,一个是用于更新原始文本文件并写入新文本文件而不修改原始文本文件的文本文件。所以 file1.txt 看起来像
$ego_vel=x
$ped_vel=2
$mu=3
$ego_start_s=4
$ped_start_x=5
file2.txt 喜欢
$ego_vel=5
$ped_vel=5
$mu=6
$to_decel=5
outputfile.txt 应该是这样的
$ego_vel=5
$ped_vel=5
$mu=6
$ego_start_s=4
$ped_start_x=5
$to_decel=5
到目前为止我尝试的代码如下:
import sys
import os
def update_testrun(filename1: str, filename2: str, filename3: str):
testrun_path = os.path.join(sys.argv[1] + "\\" + filename1)
list_of_testrun = []
with open(testrun_path, "r") as reader1:
for line in reader1.readlines():
list_of_testrun.append(line)
# print(list_of_testrun)
design_path = os.path.join(sys.argv[3] + "\\" + filename2)
list_of_design = []
with open(design_path, "r") as reader2:
for line in reader1.readlines():
list_of_design .append(line)
print(list_of_design)
for i, x in enumerate(list_of_testrun):
for test in list_of_design:
if x[:9] == test[:9]:
list_of_testrun[i] = test
# list_of_updated_testrun=list_of_testrun
break
updated_testrun_path = os.path.join(sys.argv[5] + "\\" + filename3)
def main():
update_testrun(sys.argv[2], sys.argv[4], sys.argv[6])
if __name__ == "__main__":
main()
使用这段代码,我可以得到这样的输出
$ego_vel=5
$ped_vel=5
$mu=3
$ego_start_s=4
$ped_start_x=5
$to_decel=5
我得到的所有值都正确,除了 $mu 值。 有人会告诉我我哪里出错了吗?是否可以为我的任务共享一个 python 脚本?
【问题讨论】:
-
你的文件合并之间的逻辑是什么?我不明白如何从第 2 个文件创建第三个文件
标签: python