2015-04-24 1 views
-1

ИТАК кодмне нужна помощь с моим питоном кодом pyglatin

pyg = 'ay' 
print "To translate type A SINGLE word or name!" 
original = raw_input("Type word Here:") 
while len(original) > 0 and original.isalpha(): 
    word = original.lower() 
    first = word[0] 
    new_word = word[1:] + first + pyg 
    print "Translating 1 moment..." 
    print "Translated view below!" 
    print new_word 
    print "Made by: Tobias Balentine" 
    raw_input ('pause') 
    if raw_input ("Do you want to start over?").lower().[0] != 'y': break 

поэтому мой вопрос как я перезапустить в начало кода, не выходя из программы, когда я поставил (if raw_input ("Do you want to start over?").lower().[0] != 'y': break) он просто показывает снова, но я хочу, чтобы он пошел в начало кода, чтобы вы могли ввести другое слово для перевода, как бы я это сделал?

P.S. Я новичок в Python

+0

Ваше слово prompt не находится внутри цикла. – TigerhawkT3

+0

хорошо, можете ли вы сказать мне, как исправить это, потому что я новичок в python. – Tobias

+1

Понимание того, что делает цикл, является фундаментальной частью любого языка программирования. Я рекомендую посмотреть некоторые уроки Python, чтобы получить представление об основах. – TigerhawkT3

ответ

0

Скопируйте это заявление:

original = raw_input("Type word Here:") 

внутри в то время как заявление. Ваш окончательный код должен быть таким:

pyg = 'ay' 
print "To translate type A SINGLE word or name!" 
original = raw_input("Type word Here:") 
while len(original) > 0 and original.isalpha(): 
    word = original.lower() 
    first = word[0] 
    new_word = word[1:] + first + pyg 
    print "Translating 1 moment..." 
    print "Translated view below!" 
    print new_word 
    print "Made by: Tobias Balentine" 
    raw_input ('pause') 
    if raw_input ("Do you want to start over?").lower().[0] != 'y': 
     break 
    original = raw_input("Type word Here:") 
+0

вам нужно определить 'original' над контуром – mway

+0

, что код не работает – Tobias

+0

@Tobias, почему бы и нет? – sshashank124

0

Как показали другие, если вы хотите постоянно запрашивать у пользователя новых слов, вам нужно иметь, что приглашение быть внутри цикла. Вы могли бы сделать что-то вроде этого, где вы запрашиваете пользователя в цикле, а затем, если вход действителен, переведите слово. Если это не так, сообщите об этом пользователю. Затем, в любом случае, вы спрашиваете пользователя, хочет ли она начать все заново, и сломайте цикл, если она не ответит «да» (точнее, если она набирает все, что не начинается с «Y» или «y «).

pyg = 'ay' 
print "To translate type A SINGLE word or name!" 
while True: 
    original = raw_input("Type word Here:") 

    # Validate the input here. If it's valid, 
    # do the translation. 
    if original and original.isalpha(): 
     word = original.lower() 
     first = word[0] 
     new_word = word[1:] + first + pyg 
     print "Translating 1 moment..." 
     print "Translated view below!" 
     print new_word 
    else: 
     # Tell the user if his input is invalid. 
     print "Your input was stupid. No translation 4 u." 

    # Ask the user if he wants to start over 
    if raw_input ("Do you want to start over?").lower()[0] != 'y': 
     break 

# Give em something to remember you by 
print "Made by: Tobias Balentine" 
Смежные вопросы