allを使用してください。
string = input("Enter your string")
print(all(char in ['m', 'i', 'u'] for char in string))
基本的には、
(char in ['m', 'i', 'u'] for char in string)
はブール値を生成する反復可能オブジェクトを構築します。このイテレーターは、文字列内の各文字(最初から始まる)に対して、charがm、iまたはuの場合はTrue
、それ以外の場合はFalse
となります。
は、その後、あなたはall()
を養うこのイテレータ:
all(iterable)
戻り真のiterableの全ての要素に該当する場合(または反復可能が空の場合)。相当:
def all(iterable):
for element in iterable:
if not element:
return False
return True
all
新しく作成されたイテレータを反復処理し、すぐにそれが唯一のTrue
の値を取得する場合、それはFalse
、またはTrue
につれてFalse
を返します。テストはその場で行われ、all
がcharではないどちらメートルの、I、またはuであることがわかるとすぐに停止します
イテレータの美しさにはTrue
/False
リストは、これまでに計算されていないということです。ここでは関係ありませんが、一部のアプリケーションでパフォーマンスに影響を与える可能性があります。
をしかし、あなたは正確に印刷後のコードが何をするのか私に説明してください可能性があります。私のためには、それは文字列でm iとuだけを探しているように見えます。そうでなければ、それはうまくいっていますが、例えば、すべての単語は何ですか? –
私はこれに答えるために私の答えを編集しました。私は教育目的のためにそれを残しているが、私は[sberryのソリューション](http://stackoverflow.com/a/36696276/4653485)を好む。 –