Python Noob с использованием 2,7 на Windows.Я работаю над созданием иерархического представления дерева в HTML программно.У меня есть файл, который выводится примерно так:
0
2
4
6
8
8
0
2
4
4
6
8
8
6
6
out.txt
выглядит так:
0
2
4
6
8
8
0
2
4
4
4
6
8
8
6
6
Мой код:
x = open('out.txt','r')
for current_line in x:
prev_line = current_line[:-1]
print "Current: " + current_line
print "Previous: " + prev_line
if prev_line > current_line:
print "Folder"
elif prev_line == current_line:
print "Root"
x.close()
Проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я пытаюсь сравнить prev_line
с current_line
, я не получаю желаемый результат.Я могу сделать что-то вроде if prev_line == "0": print "Root"
, но это не сработает, как только для этого случая.Кроме того, похоже, что часть if
вычисляется до того, как будет сделан следующий ток.Результаты, которые я получаю из моего текущего кода, включают:
Current: 0
Previous: 0
Current: 2
Previous: 2
Current: 4
Previous: 4
Current: 6
Previous: 6
Current: 8
Previous: 8
Current: 8
Previous: 8
Current: 0
Previous: 0
Current: 2
Previous: 2
Current: 4
Previous: 4
Current: 4
Previous: 4
Current: 4
Previous: 4
Current: 6
Previous: 6
Current: 8
Previous: 8
Current: 8
Previous: 8
Current: 6
Previous: 6
Current: 6
Previous:
Что я делаю не так и как это исправить?Я не знаю, если это сравнение строки с INT, но если это так, я буду чувствовать себя глупо.Я пробовал это, но это вызывает ошибку при проверке последнего «Предыдущий:».