Запрос нескольких текстовых файлов для объединения столбцов и отображения результатов с использованием Python - PullRequest
0 голосов
/ 19 мая 2018

У меня есть два текстовых файла, которые содержат данные, как показано ниже, и я хочу отобразить вывод в формате, описанном в Python.Я использую PyCharm IDE с Python 3.0.Я также пытался использовать словарь и список в Python, но мне не удалось получить его правильно.

[File1.txt]

2|Stacey|Tucker
4|Simi|Mirza
9|Naved|Singh
6|Ram|Patel
7|Joe|Pruth

[File2.txt]

2|26
6|17
9|30
4|31
7|35

желаемый вывод на печать:

2  Tucker,Stacey   26
4   Mirza,Simi      31
9   Singh,Naved     30
6   Patel,Ram       17
7   Pruth,Joe       35

Кто-нибудь может дать мне предложение?

1 Ответ

0 голосов
/ 19 мая 2018

Если файлы не очень большие, вы можете прочитать каждый из них, добавив строки в список (по одному для каждого файла).Затем разбейте строки на «|».Это даст вам индекс [0] для сопоставления.Тогда вы можете взять части каждого списка и объединить в новый список для вывода.Новый список будет иметь [0] из любого списка, [2] из file1list + "," + [1] из filelist1 + [1] из filelist2.

#merglist.py

student_id = [] 
grade = []

file1 = open("file1.txt")
file2 = open("file2.txt")

f1 = file1.readlines()
for line in f1:
    student_id.append(line.split('|'))

f2 = file2.readlines()
for line in f2:
    grade.append(line.split('|'))

for g in grade:
    for s in student_id:
        if g[0]==s[0]:
            newline = g[0] + " " + s[2].strip("\n") + ", " + s[1] + " "+ g[1].strip("\n")
            print newline

| => python2 mergelists.py 
2 Tucker, Stacey 26
6 Patel, Ram 17
9 Singh, Naved 30
4 Mirza, Simi 31
7 Pruth, Joe 35
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...