IF文とFORループをPythonでどのように組み合わせますか?同様にifとforのステートメントを組み合わせてこの操作を実行する方法
list = [1,2,3,4]
x = 4
count = 0
for i in list:
if (i == x):
count += 1
1行に4,5,6をどのように組み合わせますか?これは可能ですか?
IF文とFORループをPythonでどのように組み合わせますか?同様にifとforのステートメントを組み合わせてこの操作を実行する方法
list = [1,2,3,4]
x = 4
count = 0
for i in list:
if (i == x):
count += 1
1行に4,5,6をどのように組み合わせますか?これは可能ですか?
ええ、あなたがしようとしているのは数字の出現回数をカウントすることです。そして、Python Listにはすでに仕事を得るためのメソッドcount()
があります。しかし、変数名の使用は、list
というように、Python list
のデータ構造をシャドーすることを控えてください。
>>> number_list = [1, 2, 3, 4]
>>> print number_list.count(4)
>>> 1
number_count = sum(1 for i in number_list if i == x)
それらの名前の組み込みの意味との混乱があるかもしれないので、変数名としてlist
またはcount
を使用しないでください。 Terence Hillの答えは良いですが、リストが長い場合、そのサイズを見つける前に完全なリストを作成するので、より多くのメモリを使用します。 Mineはジェネレータ式であり、完全なリストを作成することはありません。 ZdaRの答えは、Pythonの組み込み機能を使用しているため、おそらく最も速く、最小限のメモリしか使用しないため、最もpythonになります。この答えはあなたが実際に尋ねたものに最も近いものです。
'len(iがi == xの場合はリスト内にi)' ' –