首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的代码跳过所有的ifs,直接转到of语句,甚至满足if语句的要求?

为什么我的代码跳过所有的ifs,直接转到of语句,甚至满足if语句的要求?
EN

Stack Overflow用户
提问于 2022-06-18 11:54:32
回答 2查看 46关注 0票数 -1
代码语言:javascript
运行
复制
import random 
                player=""
                com=""
                start = input("Press enter to start")
                def bj():   
                    com = random.choice([2,3,4,5,6,7,8,9])
                    print(com)
                    player = input("Hit/Stand/Forfeit: ").lower()
                    
                    print(player)
                
                def stand():
                    if player_value > com and player_value != 22:
                        print("You win")

我已经给玩家写了“没收”。但是,即使玩家没有被“没收”,它仍然在运行。

代码语言:javascript
运行
复制
while player != 22 or player != "forfeit":
         bj()

这里是条件。即使你键入“击中”/“没收”/“站立”,它也会直接转到其他地方。

代码语言:javascript
运行
复制
if player == "hit":
            player_value = random.choice([2,3,4,5,6,7,8,9])
         elif player == "stand" or player == 22:
            stand()
            break   
         elif player == "forfeit":
              break
         else:
             print("Invalid. Try again")   
             print("----------------------")
EN

回答 2

Stack Overflow用户

发布于 2022-06-18 12:04:46

变量不能同时是两个值。因为您的条件是检查它不等于两个不同的值,所以保证其中一个或另一个值为真。你可能想:

代码语言:javascript
运行
复制
player != 22 and player != "forfeit"
#            ^^^
票数 0
EN

Stack Overflow用户

发布于 2022-06-18 12:40:48

我希望这能帮到你。

代码语言:javascript
运行
复制
import random


def stand():
    print('stand')


player = 'hit' # Test different player values.
while True:
    if player == "hit":
        player_value = random.choice([2, 3, 4, 5, 6, 7, 8, 9])
        break # This break is required. Was not in the example code.
    elif player == "stand" or player == 22:
        stand()
        break
    elif player == "forfeit":
        break
    else:
        print("Invalid. Try again")
        print("----------------------")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72669038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档