Ввод задается примерно в 4 раза, а затем не задается следующий вопрос.
Я ожидаю, что мой код запросит ввод от пользователя один раз, но он запрашивает его примерно 4 раза и не переходит к следующему.Он начинает спрашивать со второй программной вещи "def translate word", а затем идет наверх и несколько раз просит ввести слово, а затем перестает что-либо делать и не идет к самому нижнему слева.
Что я уже пробовал:
"""
должен принимать в себя один параметр, который предполагается одним словом
найдите в слове индекс расположения первой гласной (a, e, i, o, u)
возвращает индексное значение первой гласной или отрицательное значение 1, Если гласной нет
"""
def findFirstVowel(слово):
original = input('введите слово:')
слово = оригинал.ниже()
first = word[0]
гласный = ('а','е','я','о','п',)
если len(original) > 0 и original.isalpha():
если первый гласный в:
печать (первая)
еще:
печать ('-1')
еще:
print("пусто...")
"""
принимает один параметр, который считается одним словом
отправляет это слово в findFirstVowel() и сохраняет результат, отправленный обратно
использует результат findFirstVowel (), чтобы увидеть, какое из трех правил применимо
использует эту информацию для соответствующего изменения слова
возвращает строку, представляющую переведенное слово
"""
деф translateWord():
lst = ['sh', 'gl', 'ch', 'ph', 'tr', 'br', 'fr', 'bl', 'gr', 'st', 'sl', 'cl', 'pl', 'fl']
предложение = ввод('введите то, что вы хотели бы перевести на свиную латынь, и нажмите ENTER: ')
предложение = sentence.split()
для k в диапазоне(len(предложение)):
i = предложение[k]
если я[0] в ['a', 'e', 'i', 'o', 'u']:
предложение[k] = i+'путь'
elif t(i) в lst:
предложение[k] = i[2:]+i[:2]+'ay'
Элиф я.isalpha() == ложь:
предложение[k] = i
еще:
предложение[k] = i[1:]+i[0]+'ay'
return ' '.join(предложение)
деф т(ул.):
возврат str[0]+str[1]
если __name__ == "__main__":
х = translateWord()
печать(x)
"""
примите один параметр, предполагаемый как одно предложение
предположим, что в нем нет знаков препинания
предположим, что в конце предложения есть точка
удаляет точку из предложения и меняет все на строчные буквы
разбивает предложение на отдельные слова с помощью split ()
используйте функцию translateWord() для перевода каждого слова, печатая каждое слово по мере его прохождения
"""
def pigLatinTranslator(предложение):
sentence=input('пожалуйста, введите предложение, чтобы перевести его:')
предложение=sentence.split()
для k в диапазоне(len(предложение).ниже):
i=предложение[k]
если я[0] в ['a', 'e', 'i', 'o', 'u']:
предложение[k] = i+'путь'
elif t(i) в lst:
предложение[k] = i[2:]+i[:2]+'ay'
Элиф я.isalpha() == ложь:
предложение[k] = i
еще:
предложение[k] = i[1:]+i[0]+'ay'
return ' '.join(предложение)
деф т(ул.):
возврат str[0]+str[1]
если __name__ == "__main__":
х = pigLatinTranslator()
печать(x)
Richard MacCutchan
Это три разные программы, какая из них вызывает проблему?