2016-12-06 3 views
-4
例えば

私は、ユーザーからの入力を3回促す場合、つまり数字を言うことができます。ユーザーが同じ番号を3回入力した場合、自動的にチェックできますか?

demo_list = [] #This is just to display all inputs from the user at the end 
    c=0 

    while c<3: 
     answer = input("Please enter a number ") # User types 1 all three times for instance 
     demo_list.append(answer) 
     c+=1 

    print(demo_list) # Should print this.. check below 

    # [1,1,1] 

はチェックして、ユーザーからのすべての入力がすべて同じ値であったかどうかを確認するためのpythonのための方法は何ですか?

この場合、すべての値は同じ '1'でしたが、ユーザーが入力したものを印刷せずにバックグラウンドでチェックすることはできますか?

+0

* 3つの__unique__値がリストに*があるかどうか[0] ' –

+1

チェック値をループのために行うとdemo_list'にそれらすべてを比較します。 'set'はリストを重複排除します。 'set'の' len'は、その中にいくつのユニークな値が入っているかを示しています... – deceze

答えて

0

demo_listのすべての要素が同一であるかどうかを確認する必要があります。これは、最初の要素の出現回数とリストの長さを比較することで実行できます。これにより、len()list.count()の機能を使用する必要があります。

demo_list = [] 
c=0 
while c<3: 
    answer = input("Please enter a number ") 
    demo_list.append(answer) 
    c += 1 

# Begin logic to check whether all inputs are equal 
all_equal = False 
if demo_list.count(demo_list[0]) == len(demo_list): 
    all_equal = True 

# Use value of `all_equal` in your logic 
+0

これは素晴らしい作品です –

0

リストのすべての値が同じかどうかを確認できます。

if all([demo_list[0] == a for a in demo_list]): 
    print("All are equal.") 
else: 
    print("Different.") 
+0

これはトリックです。 –

関連する問題