2016-09-03 5 views
0

мне нужно написать код питона, чтобы напечатать вход, как это:Python EOF ошибка, когда цикл

while (True): 
    output = raw_input() 
    print output 

Но когда я хочу, чтобы закончить цикл, я использовал Ctrl_D, и он говорит:

File "./digits.py", line 6, in <module> 
    output = raw_input() 
    EOFError 

Как это можно решить? Если возможно, пожалуйста, дайте мне простой способ, потому что это первый раз, когда я пишу в python.

+0

Или вы * действительно * хотите ctrl_d для выхода из цикла, прочитать об исключениях в питоне – doctorlove

+1

Если это первый раз, когда вы написать Python, Я хотел бы отметить, что вы действительно должны использовать Python 3, который существует в течение ** 8 лет **, если нет конкретной насущной причины, по которой вам нужно использовать Python 2? –

ответ

3

The EOFError является исключением, которое может быть перехвачено с try - except. Здесь мы разорвать петлю, используя break ключевое слово, если EOFError брошено:

while True: 
    try: 
     output = raw_input() 
    except EOFError: 
     break 

    print(output) 
-2

Рассматривали ли вы проверку ключевого слова в своем цикле?

while (True): 
    output = raw_input() 
    if str(output) == "exit": 
     break 
    print output