def cat_latin_word(text):
""" convert the string in another form
"""
constant = "bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ"
for word in text.split():
if word[0] in constant:
word = (str(word)[-1:] + str(word)[:4] + "eeoow")
else:
word = (str(word) + "eeoow")
print(word)
def main():
""" converts"""
text = input("Enter a sentence ")
cat_latin_word(text)
main()
Я вижу вескую причину для использования join
, но почему только на одной строке?
Я получаю вывод правильно .. это для ввода ankit jaiswal..outtput is ankiteeoow ljaiseeoow, но я хочу, чтобы он был в одной строке
Вопрос @cdarke исправлен. Я хочу выводить в одну строку. В настоящее время я получаю разделенный вывод.
@VikasDamodar, я ожидаю вывода в одну строку .. не разделен на две строки или более
Несколько указателей:
string
и используйте set
для сложности поиска O (1).str
для переменных, которые уже являются строками.' '.join
.Вот рабочий пример:
from string import ascii_lowercase, ascii_uppercase
def cat_latin_word(text):
consonants = (set(ascii_lowercase) | set(ascii_uppercase)) - set('aeiouAEIOU')
print(' '.join([f'{word}eeow' if not word[0] in consonants else \
f'{word[-1:]}{word[:4]}eeoow' for word in text.split()]))
text = input("Enter a sentence ")
cat_latin_word(text)
Вы можете использовать список для размещения всех слов или использовать Распечатать() по-другому. Пример:
print(word, end = "\t")
где здесь я использую аргумент ключевого слова end
, чтобы установить его на '\t'
(по умолчанию это '\n'
)
Просто отредактировал свой код, чтобы вернуть результаты в виде слов, разделенных пробелом.
def cat_latin_word(text):
constant = "bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ"
result = []
for word in text.split():
if word[0] in constant:
word = (str(word)[-1:] + str(word)[:4] + "eeoow")
result.append(word)
else:
word = (str(word) + "eeoow")
result.append(word)
return ' '.join(result)
def main():
text = 'ankit jaiswal'
print(cat_latin_word(text))
вывод не поступает правильно.Только одно слово преобразуется
вы можете добавить какой-нибудь образец вывода, которого вы ожидаете?