Comment laisser Python reconnaître à la fois minuscules et en majuscules d'entrée?
Je suis nouveau sur le Python. Je suis en train d'écrire un programme qui le distingue si un mot commence par une voyelle. Le problème, c'est que le programme n'est en mesure de gérer correctement les majuscules comme entrée. Par exemple, si je donne le mot "Apple" en entrée, le résultat est True
; toutefois, si le mot "apple" est fourni en entrée, le résultat est False
. Comment puis-je résoudre ce problème?
word = input ("Please Enter a word:")
if (word [1] =="A") :
print("The word begins with a vowel")
elif (word [1] == "E") :
print("The word begins with a vowel")
elif (word [1] == "I") :
print("The word begins with a vowel")
elif (word [1] == "O") :
print("The word begins with a vowel")
elif (word [1] == "U") :
print("The word begins with a vowel")
else:
print ("The word do not begin with a vowel")
OriginalL'auteur user1718826 | 2012-10-04
Vous devez vous connecter pour publier un commentaire.
Convertir le word entièrement en minuscules (ou majuscules) première:
Aussi, pour obtenir la première lettre de votre mot, utilisez
word[0]
, pasword[1]
. Les listes sont à zéro, indexés en Python et presque tous les langages de programmation.Vous pouvez également condenser votre code par un peu:
word[0].lower()
peut-être un peu plus efficaceOriginalL'auteur Blender
Habituellement, vous devez utiliser
str.lower()
(oustr.upper()
) sur l'entrée pour le normaliser.Python3.3 a une nouvelle méthode appelée
str.casefold()
qui fonctionne correctement pour l'unicode.casefold()
. Il semble assez utile!Cool. TIL casefold!
OriginalL'auteur John La Rooy
Vous pouvez convertir la saisie en majuscules avant de les comparer.
OriginalL'auteur Matt Ball
Le vérifier pour les voyelles se fait à l'aide de str.startswith qui peut accepter un n-uplet de valeurs multiples. PEP 8 Guide de Style pour le Code Python recommande l'utilisation de startswith avec plus de chaîne de découpage pour une meilleure lisibilité du code:
Les Expressions Conditionnelles sont utilisés pour définir le message indiquant si le mot commence par une voyelle ou pas. Ensuite, j'ai utilisé le Mise En Forme De Chaîne méthode pour préparer le message. Tout aussi une grammaire anglaise de correction de la chose, j'ai remplacé la phrase "Le mot ne commence pas par une voyelle" avec "Le mot ne commence pas par une voyelle".
OriginalL'auteur Marwan Alsabbagh
Vous devez utiliser:
OriginalL'auteur Harrt
1) Il existe de nombreuses façons de faire ce qui doit être fait, comme ce Blender a dit. Cependant, ce que vous essayez de faire est de convertir la première lettre à la supérieure si l'entrée est inférieure ou supérieure. L'utilisation de "tirer profit" de le faire.
2), Vous aurez également besoin d'utiliser le mot[0], au lieu de la parole[1] pour obtenir la première lettre
Ce fera la première lettre en majuscule et le reste restera comme il est.
OriginalL'auteur Kapil Marwaha