Tôi đang cố gắng lấy trò chơi kéo giấy bằng đá này để trả về giá trị Boolean, như trong tập hợp player_wins
thành True hoặc False, tùy thuộc vào người chơi thắng hay để cấu trúc lại mã này hoàn toàn để nó không sử dụng vòng lặp while. Tôi đến từ phía sysadmin của thế giới, vì vậy hãy nhẹ nhàng nếu điều này được viết theo phong cách sai. Tôi đã thử một vài điều, và tôi hiểu TIMTOWTDI, và chỉ muốn một số đầu vào.Câu hỏi mới bắt đầu: trả về giá trị boolean từ một hàm trong Python
Cảm ơn.
import random
global player_wins
player_wins=None
def rps():
player_score = 0
cpu_score = 0
while player_score < 3 and cpu_score < 3:
WEAPONS = 'Rock', 'Paper', 'Scissors'
for i in range(0, 3):
print "%d %s" % (i + 1, WEAPONS[i])
player = int(input ("Choose from 1-3: ")) - 1
cpu = random.choice(range(0, 3))
print "%s vs %s" % (WEAPONS[player], WEAPONS[cpu])
if cpu != player:
if (player - cpu) % 3 < (cpu - player) % 3:
player_score += 1
print "Player wins %d games\n" % player_score
else:
cpu_score += 1
print "CPU wins %d games\n" % cpu_score
else:
print "tie!\n"
rps()
Tôi đang cố gắng để làm một cái gì đó như thế này:
print "%s vs %s" % (WEAPONS[player], WEAPONS[cpu])
if cpu != player:
if (player - cpu) % 3 < (cpu - player) % 3:
player_score += 1
print "Player wins %d games\n" % player_score
if player_score == 3:
return player_wins==True
else:
cpu_score += 1
print "CPU wins %d games\n" % cpu_score
if cpu_score == 3:
return player_wins==False
else:
print "tie!\n"
Giá trị boolean nào sẽ được trả lại cho cà vạt? –
Bởi vì nó nằm trong một vòng lặp while, các mối quan hệ chỉ đưa bạn trở lại ngay từ đầu. REMATCH! – matt
Tôi lấy nó đây không phải là một dự án tốt để đạt được một sự hiểu biết đúng đắn về lập trình? – matt