2013-11-23 2 views
0

Как распечатать список?Распечатка списка

def main(): 
    fileName = input("Please input name of file to read: ") 
    fileOpen = open(fileName) 
    lineList = fileOpen.readlines() 
    print("Hercules' Strategy:", lineList[len(lineList)-3].strip()) 
    print("Initial Hydra heads:",lineList[len(lineList)- 2].strip()) 
    print("Hydra growth period:", lineList[len(lineList)-1].strip()) 

main() 

Textfile:

smallest 
8 7 3 
10 

Выходной ток:

Hercules' Strategy: smallest 
Initial Hydra heads: 8 7 3 
Hydra growth period: 10 

Выход я пытаюсь получить что то:

Hercules' Strategy: smallest 
Initial Hydra heads: [8, 7, 3] 
Hydra growth period: 10 
+0

Это не список, я думаю. это просто строка. Если вы просто хотите скобки, почему бы не «напечатать» ['+ you_string +'] '' – gongzhitaao

+0

@gongzhitaao Да точно. Это моя проблема прямо сейчас. Я хотел распечатать список, а не строку. – user2985771

+0

Итак, вы действительно хотите разобрать строку в списке? – gongzhitaao

ответ

0

Просто разделить строку и печать как цифры

print("Initial Hydra heads:",list(map(int, lineList[len(lineList)-2].strip().split()))) 

Как Hyperboreus предложил, вы можете использовать отрицательную индексацию со списком, так что следующий такой же, как в предыдущей строке

print("Initial Hydra heads:",list(map(int, lineList[-2].strip().split()))) 
+0

Я получил этот вывод: 'Начальные головки Hydra: <объект карты на 0x104929b10>' – user2985771

+0

@ user2985771 Я думаю, что вы используете Python 3. Пожалуйста, проверьте мой ответ – thefourtheye

+0

Спасибо! Извините, вам потребовалось время, чтобы принять ваше сообщение в качестве ответа! – user2985771

0

Если вы хотите, чтобы данные в списке, вы можете также присоединиться список в строку следующим образом:

joinedList = "[" + ", ".join(lineList[len(lineList)-3]) + "]" 

Если вы на самом деле не заинтересованы в том, чтобы данные в виде списка, вы должны просто обработать строку в формат, который вы хотите, как и thefourtheye предлагает.

Смежные вопросы