def option2():
f1 = open("C:\\Users\\notis\\Desktop\\data\\input_data2.txt",'r')
f1c = f1.read()
f2 = open("C:\\Users\\notis\\Desktop\\data\\input_names.txt",'r')
f2c = f2.read()
f3 = open("C:\\Users\\notis\\Desktop\\data\\output_merged_data.txt",'w') # open in `w` mode to write
f3.write(f1_contents +'\n'+ f2_contents) # concatenate the contents
h = open("C:\\Users\\notis\\Desktop\\data\\output_merged_data.txt",'r+')
hc=h.read()
for lines in f1:
for lines in f2:
split_1 = f1c.split()
split_2 = f2c.split()
split_3 = hc.split()
name1 = split_1[0]
name2 = split_2[0]
#if split_3 == '':
#name3 = ''
#else name3==split_3[0]:
#name3 = split_3[0]
if (name1 != name3 , name2 != name3):
if name1 == name2:
index = inputNames.index(',')
newstr = input2[:-1] + inputNames[index:]
h.write(newstr)
else:
if name1 < name2:
h.writelines(input2)
else:
h.writelines(inputNames)
input2 = f.readline()
inputNames = g.readline()
读取文件“input\u data2.txt”和“input_名称.txt从文件夹“数据”并创建一个合并此数据的文件-“输出\u合并”_数据.txt”. 根据名称(每个输入文件的第一列),所创建文件中的每一行都是唯一的。因此,如果名称出现在两个输入文件中,则必须合并其余的数据
“input_data2.txt” “input_names.txt”
John, 12.3, abcd Adam, 121 station road, London
Johnny, 53.3, star John, Brecon house, Pontypridd
Steve, 33.5, qwer
Output: “output_merged_data.txt”
Adam, 121 station road, London
John, 12.3, abcd, Brecon house, Pontypridd
Johnny, 53.3, star
Steve, 33.5, qwer
这是它应该做的,但它似乎只是合并两个文件在一起,我做错了什么?你知道吗
您似乎正在添加第三个文件(第一个和第二个文件的串联),这只会使问题变得复杂,而对您毫无帮助。。在我看来,您需要一个字典,其中每个人的名字都是一个键,与之相关的属性形成一个值列表。这样,如果条目已经存在(从读取第一个文件开始),您可以简单地将附加项附加到该列表中。你知道吗
比如:
注意:您提供的代码有许多结构和语法错误。。。比我在短时间内所能看到的还要多。当您对python中的不同数据类型执行不同的操作时,您可能会从阅读python中的不同数据类型的行为中获益。有很多伟大的网站都有一些小的代码挑战,帮助你逐步学习如何做基础,并最终将它们结合起来,得到像这个问题这样更复杂的东西
相关问题 更多 >
编程相关推荐