Я хотел бы попросить решения по вопросу обработки файлов. Проблема в том, что я пытаюсь распечатать кортежи из текстового файла. Некоторые цифры или тексты будут отсутствовать
Вот мой код
with open("ingredient.txt", 'r', encoding="utf8") as f1:
myarray = f1.readlines()
with open("quantity.txt", 'r', encoding="utf8") as f2:
myarray2 = f2.readlines()
with open("demand.txt", 'r', encoding="utf8") as f3:
myarray3 = f3.readlines()
for element1,element7,element0 in zip(myarray, myarray2, myarray3):
element1 = element1[:-1]
element7 = element7[:-1]
element0 = element0[:-1]
print(f'{element1:<35}{element7:<11}{element0:>7}')
Файл : demand.txt = 30,20,50
quantity.txt = 10,10,1
ingredient.txt= tomato,tomato,tomato
В моем терминале tomato 10 30
tomato 10 20
tomat 5
в параллельном положении
Результат должен быть tomato 10 30
tomato 10 20
tomato 1 50
в параллельном положении
Заранее спасибо !
2 ответа
Можно сделать это более компактно:
for e1, e2, e3 in zip(myarray, myarray2, myarray3):
print(f'{e1.strip():<35}{e2.strip():<11}{e3.strip():>7}')
Хотя в вашем форматировании есть некоторая двусмысленность, я предполагаю, что строки
element1 = element1[:-1]
element7 = element7[:-1]
element0 = element0[:-1]
Предназначены для удаления символов новой строки с конца. Но у последнего элемента нет новой строки, поэтому вы получаете tomot вместо tomoto и ничего не получаете вместо 1. Я бы предложил использовать strip
.
element1 = element1.strip()
element7 = element7.strip()
element0 = element0.strip()
И посмотрите, работает ли это лучше.
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.