python - Python:游戏没有运行
问题描述
我已经用 Python 编写了石头、剪纸、剪刀游戏的逻辑,但无法让它运行。它不会贯穿整个游戏,只会不断询问我的意见。我已经多次查看它,但看不到它可能卡在哪里。知道问题可能是什么吗?
代码如下:
import random
comp_wins = 0
player_wins = 0
def choose_option ():
user_choice = input("choose rock, paper and scissors: ")
if user_choice in ["rock","Rock"]:
user_choice = "rock"
elif user_choice in ["paper","Paper"]:
user_choice = "paper"
elif user_choice in ["scissors","Scissor"]:
user_choice = "scissors"
else:
print ("error try again")
return user_choice
def computer_option ():
comp_choice = random.randint(1,3)
if comp_choice ==1:
comp_choice = "rock"
elif comp_choice ==2:
comp_choice = "paper"
elif comp_choice ==3:
comp_choice = "scissors"
return comp_choice
while True:
print("")
user_choice = choose_option ()
comp_choice = computer_option ()
print ("")
if user_choice ==["rock"]:
if comp_choice == "rock":
print("draw")
elif comp_choice == "paper":
print("computer wins")
comp_wins += 1
elif comp_choice == "scissors":
print("user wins")
player_wins += 1
elif user_choice == "paper":
if comp_choice == "rock":
print("user wins")
player_wins += 1
elif comp_choice == "paper":
print("draw")
elif comp_choice == "scissors":
print("computer wins")
comp_wins += 1
elif user_choice == "scissors":
if comp_choice == "rock":
print("computer wins")
comp_wins += 1
elif comp_choice == "paper":
print("user wins")
player_wins += 1
elif comp_choice == "scissors":
print("draw")
print("")
print("user_wins: " + str(player_wins))
print("comp_wins: " + str(comp_wins))
print("")
解决方案
你的问题在这里
while True:
print("")
user_choice = choose_option ()
comp_choice = computer_option ()
print ("")
您永远不会退出,您应该在做出选择时放置退出条件或标志。此外,最好清理并使用具有主要功能的自顶向下结构来控制文件。
推荐阅读
- python-3.x - 在不和谐机器人中创建时间对象时收到此错误“'datetime.datetime'对象的描述符'时间'不适用于'int'对象”
- matlab - 具有不同颜色的clusterdata的Gscatter plot Matlab
- html - 如何删除页面中剩余所有元素的水平滚动条?
- r - 无法上传到 shinyapps.io
- java - 如何使用 Java Streams 解决此代码中的问题?
- hadoop - Cloud Data Fusion - 缺少现有的 Dataproc 选项
- prometheus - Prometheus 目标发现丢弃了目标标签
- snowflake-cloud-data-platform - 如果持续约 5 分钟,对 Snowflake 的 DBeaver 查询会导致“SQL 错误 [604] [57014]:SQL 执行已取消”
- swift - Swift:从 firebase 获取 1500 多张图片。请给我建议专业的方法
- javascript - 迁移到角度 9 后,无法在 colorPickerComponent 处读取未定义的属性“nativeElement”