ここでこの問題について助けが必要です。すべての詳細は下記の質問にあります。私は解決策を実行しましたが、私はこの1つのことに固執しています、誰かが私を正しい方向に導くことができたら本当に感謝します。リストをパラメータとして受け取るPython関数を書いて、リストが任意の数/秒を繰り返す場合にカウントしてください。
問題:私のプログラムを実行するたびに、3回繰り返した数字が5ではないにもかかわらず、「あなたは:3つの5つ」と表示されます。私のプログラムは質問の下にあります。
リスト3を持っている場合は、上記グリッドはパラメータとしてリストと
を受信するPythonの関数pokieTester(リスト)を書くカウントgrid = [2,2,1,3,2]
ようなリスト変数としてPythonで表すことができます。
o The first item will be the number of repeated numbers
o The second item will be the value of repeated numbers
令状:それは2つの項目を含むリストを戻します同じ
あり、4つのまたは5つの数字eパラメータを持たず、5つの乱数のリスト(1から5までの数字を含む)を返すPython関数makeList()
あなたの関数を、適切なテキストを表示するプログラムに結合します。
は(あなたは3、4または5つの数字と同じを持っていない場合は、失われます。)
例えば: あなたが勝ちます!またはあなたを失うことを残して申し訳ありません
彼らが勝った場合、それはいくつの繰り返し番号とその値を表示する必要があります。
例:
YOU WIN!あなたは、常にので、5になりますループnum
のための最後に、私のプログラムの===== pokieTester()
で
import random
def pokieTester(countList):
count = countList.count(0)
for num in [1,2,3,4,5]:
if count < 3:
count = countList.count(num)
demoList = [count, num]
return demoList
def makeList():
numList = []
for count in [0,1,2,3,4]:
a = random.randint(1,5)
numList.append(a)
return numList
gameList = makeList()
print (gameList)
matches = pokieTester(gameList)
count = matches[0]
num = matches[1]
num_List = ['three','four','five']
if count > 2:
print ("You win")
print ("You have: " , end = '')
if count == 3:
print (num_List[0], num, end = '')
elif count == 4:
print (num_List[1], num, end ='')
elif count == 5:
print (num_List[2], num, end ='')
else:
print ("Sorry, You lose")
:その後、キーとして
count
を使用して番号のテキストバージョンを取得することができます明らかに宿題)がうまくいかず、どのようにして既存のコードを修正することもできません。説明なしでコードをダンプすることは役に立ちません。 – mhawkeお世話になりましたが、私が学生なので、collections.counterやoperator itemgetterを使用することはできません。基本的なものを使用するだけです。 – Zubin
@mhawkeあなたが正しいです。しかし、私はPythonが英語よりはるかに優れていることを知っています。したがって、コードに答えるのが簡単なこともあります。 –