2016-09-10 19 views
2

私はPythonで新しく、すべての母音を文字列に印刷しようとしています。だから、誰かが "こんにちはそこに入ったら、大丈夫ですか?"すべての母音を印刷する必要があります...しかし、私はどのようにわからないのですか? (それは、母音を数えることではなく、母音を印刷することではありません)文字列内の母音だけを印刷する

今のところ私はこれを持っています。

sentence = input('Enter your sentence: ') 

if 'a,e,i,o,u' in sentence: 
    print(???) 

else: 
    print("empty") 
+0

S ee [Pythonの文字列から子音を削除する](http://stackoverflow.com/questions/29998052/deleting-consonants-from-a-string-in-python)この問題に適用できるさまざまな便利なテクニック。 –

答えて

2

このようなものはありますか?

sentence = input('Enter your sentence: ') 
for letter in sentence: 
    if letter in 'aeiou': 
     print(letter) 
+0

ありがとう、それは...私を助けてくれてありがとう! – Ruben

0

サプライprintにリストの内包を提供して解凍:

>>> s = "Hey there, everything allright?" # received from input 
>>> print(*[i for i in s if i in 'aeiou']) 
e e e e e i a i 

これは、すべての母音のリストを作り、*を開梱することにより、印刷の呼び出しに位置引数として供給する。

あなたは明確な母音が必要な場合は、単にセットの理解提供:あなたはそれが空だかどうに従って、その上にelse節そのプリント、事前に構築リストや行為を追加する必要がある場合

print(*{i for i in s if i in 'aeiou'}) # prints i e a 

を:

r = [i for i in s if i in 'aeiou'] 
if r: 
    print(*r) 
else: 
    print("empty") 
1

あなたは文章中の母音のすべて出現印刷したい場合は2つの答えが優れている - そうな「Hello World」は「O」二回、など

を印刷します

の別のの母音だけを覚えている場合は、代わりに母音をループすることができます。ある意味では、他の回答によって示唆されているコードを反転させています。

sentence = input('Enter your sentence: ') 

for vowel in 'aeiou': 
    if vowel in sentence: 
     print(vowel) 

だから、「ねえ、何でもいい?あなたは、常に正規表現を使用することができ

print(*[v for v in 'aeiou' if v in sentence]) 
0

e e e e e i a i 

と同じ考えが、printにリストの内包を開梱するJimの方法、次のとは対照的に

a e i 

を印刷します。

import re 

sentence = input("Enter your sentence: ") 
vowels = re.findall("[aeiou]",sentence.lower()) 

if len(vowels) == 0: 
    for i in vowels: 
     print(i) 
else: 
    print("Empty") 
関連する問題