2015-06-23 51 views
2
while testcount < 100: 
    num1=randint(0,10) 
    num2=randint(0,10) 
    num3=randint(0,10) 
    num4=randint(0,10) 
    num5=randint(0,10) 
    numo=[num1,num2,num3,num4,num5] 

    if #there are two 7s# in numo: 
     testcount=testcount+1 
     num_of_successes=num_of_successes+1 
    else: 
     testcount=testcount+1 

    print(num_of_successes,"out of 100 there were two 7s") 

如何檢測'numo'中是否有兩個7?即使它不使用這些代碼中的大部分,也可以使用 。Python在字符串中檢測兩個相同的東西

+0

你想查看numo中是否有兩個7 – The6thSense

回答

5

有關列表,您可以使用count()函數來找出有多少個parameter傳入count函數的元素存在於列表中。

示例 -

>>> l = [1,2,3,4,5,6,4] 
>>> l.count(4) 
2 
0

可以使用list.count()方法來檢查occurances。

while testcount < 100: 
     num1=randint(0,10) 
     num2=randint(0,10) 
     num3=randint(0,10) 
     num4=randint(0,10) 
     num5=randint(0,10) 

    numo=[num1,num2,num3,num4,num5] 


    num_of_successes=numo.count(7) 

    if num_of_successe == 2 : 
    print(num_of_successes,"out of 100 there were two 7s") 
0
for testcount in range(100): 
    num1=randint(0,10) 
    num2=randint(0,10) 
    num3=randint(0,10) 
    num4=randint(0,10) 
    num5=randint(0,10) 
    numo=[num1,num2,num3,num4,num5] 

    if numo.count(7) == 2: 
     num_of_successes=num_of_successes+1 

print(num_of_successes, " out of 100 there were two 7s") 
0

依我之見:

from random import randint 
testcount = 0 
num_of_successes = 0 
while testcount < 100: 
    num1 = randint(0, 10) 
    num2 = randint(0, 10) 
    num3 = randint(0, 10) 
    num4 = randint(0, 10) 
    num5 = randint(0, 10) 
    numo = [num1, num2, num3, num4, num5] 
    if numo.count(7) == 2: 
     num_of_successes += 1 
    testcount += 1 
print num_of_successes, "out of 100 there were two 7s" 
1

可避免沒有任何清單上的蒼蠅計數在所有搜索列表中的項目:

from random import randint 

num_of_successes = 0 

for testcount in xrange(100): 
    if sum(int(randint(0, 10) == 7) for i in xrange(5)) == 2: 
     num_of_successes += 1 

print(num_of_successes, "out of 100 there were two 7s") 
相關問題