sách gpt4 ai đã đi

python - 石头、剪刀、布风格的游戏(牛仔、忍者、熊)

In lại 作者:行者123 更新时间:2023-11-30 23:14:04 25 4
mua khóa gpt4 Nike

在我们的作业中发现 đây我们正在创建一款名为“牛仔、忍者、熊”的游戏,本质上是“石头、剪子、布”。所以我有两个问题。

1.) 如何将 c、n 或 b 分配给程序生成的随机数 1、2 或 3?

2.) 是否有一种快速简便的方法可以确保 N 等于 n,以便在比较程序的选择和用户的选择时缩短代码?那么它只需要比较 c、b 和 n,而不是将 C、B 和 N 也放入循环中?

"""
Author:
Program: cnb.py
Description: A game of Cowboy, Ninja, Bear. Similar to Rock, Paper, Scissors.
The user picks either Ninja, Cowboy, or Bear. The program compares this against
its own randomly generated choice and replys with the rounds outcome. The program
also keeps track of the number of wins, losses, ties, and overall rounds.
"""

nhập khẩu ngẫu nhiên
random.seed()

counter = 1
winCounter = 0
loseCounter = 0
tieCounter = 0

#Input Rules

print ("Enter:")
print (" 'C' or 'c' for Cowboy")
print (" 'N' or 'n' for Ninja")
print (" 'B' or 'b' for Bear")
print()


#Prompt user for input

print ("Round", counter, "Fight!")
userStr = input("Please enter a weapon: ")



#If user input is not compliant with rules instruct
#user to retry.

if userStr == "q" or userStr == "Q":
print("Game Over!")
if userStr != "N" or userStr != "n" or userStr != "C" or userStr != "c" or userStr != "B" or userStr != "b" or userStr == "q" or userStr == "Q":
print ()
print ("That's not a valid choice!")
userStr = input("Please enter a weapon: ")

#Computer picks Weapon

computer = random.randint(1,3)



#Compare Results and print results

#Win
if userStr == c and computer == c
winCounter = winCounter + 1
print ("You win")
if userStr == n and computer == n
winCounter = winCounter + 1
print ("You win")
if userStr == b and computer == b
winCounter = winCounter + 1
print ("You win")

#Loss
if userStr == c and computer == c
lossCounter = lossCounter + 1
print ("You lose")
if userStr == n and computer == n
lossCounter = lossCounter + 1
print ("You lose")
if userStr == b and computer == b
lossCounter = lossCounter + 1
print ("You lose")

#Tie
if userStr == c and computer == c
tieCounter = tieCounter + 1
print ("You tied")
if userStr == n and computer == n
tieCounter = tieCounter + 1
print ("You tied")
if userStr == b and computer == b
tieCounter = tieCounter + 1
print ("You tied")



#Loop to new round

counter = counter + 1
print()
print ("Round", counter)
userStr = input("Please enter a weapon: ")

1 Câu trả lời

要随机分配三个字母之一,不必费心去遍历整数 - 只需随机分配三个字母之一即可!

computer = random.choice('cnb')

但是,您的代码中还有其他错误,例如

if userStr != "N" or userStr != "n" or (etc etc)

userStr Sẽ始终Khác với'N'或不同于'n'(等等) - - 毕竟,如果它等于一个,它就不能也等于另一个,不是吗?!

所以这里必须使用,不能hoặc...!-)

至于标准化大小写,只需执行以下操作:

userStr = userStr.lower()

并且它始终是小写的。

关于python - 石头、剪刀、布风格的游戏(牛仔、忍者、熊),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28933430/

25 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com