나는 모두가 여기에 익숙하다고 확신하는 돼지 라틴어 질문을하고 있습니다. 내가 얻을 수없는 유일한 방법은 입력과 출력의 경우를 일치시키는 것입니다. 예를 들어, 사용자가 Latin을 입력하면 코드에서 atinLay
을 생성합니다. Atinlay
을 생산하고 싶습니다.파이썬 케이스 일치하는 입출력
import string
punct = string.punctuation
punct += ' '
vowel = 'aeiouyAEIOUY'
consonant = 'bcdfghjklmnpqrstvwxzBCDFGHJKLMNPQRSTVWXZ'
final_word = input("Please enter a single word. ")
first_letter = final_word[:1]
index = 0
if any((p in punct) for p in final_word):
print("You did not enter a single word!")
else:
while index < len(final_word) and (not final_word[index] in vowel):
index = index+1
if any((f in vowel) for f in first_letter):
print(final_word + 'yay')
elif index < len(final_word):
print(final_word[index:]+final_word[:index]+'ay')
감사합니다. 사용자가 모두 소문자로 입력하면 대문자 출력을 원하지 않는다는 것을 잊었습니다. –
@ChristopherFlach 간단합니다. str.islower()를 사용하면됩니다. 붙박이. –