所以我有一個班級任務,我必須做一個石頭紙剪刀遊戲,並停止作弊。我不斷收到TypeError:不可能的類型:'列表'Python新手:獲取TypeError:不可用類型:'list'
我不知道是什麼原因造成的;有人可以幫我解決這個問題嗎?
import random
import re
def MatchAssess():
if userThrow == compThrow:
print("Draw")
elif userThrow == "r" and compThrow == "p":
print("Computer chose paper; you chose rock - you lose")
elif userThrow == "p" and compThrow == "s":
print("Computer chose scissors; you chose paper - you lose!")
elif userThrow == "r" and compThrow == "p":
print("Computer chose paper; you chose rock - you lose!")
elif userThrow == "s" and compThrow == "r":
print("Computer chose rock; you chose scissors - you lose!")
else:
print("you win")
CompThrowSelection = ["r","p","s"]
ThrowRule = "[a-z]"
while True:
compThrow = random.choice(CompThrowSelection)
userThrow = input("Enter Rock [r] Paper [p] or Scissors [s]")
if not re.match(CompThrowSelection,userThrow) and len(userThrow) > 1:
MatchAssess()
else:
print("incorrect letter")
userThrow = input("Enter Rock [r] Paper [p] or Scissors [s]")
're.match(CompThrowSelection,userThrow)'是比較錯誤的東西 - 它不應該是CompThrowSelection,因爲正則表達式不是列表。相反,我認爲它應該是'ThrowRule','ThrowRule'應該是'[rps]' –