首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我的while循环一遍又一遍地重复

我的while循环一遍又一遍地重复
EN

Stack Overflow用户
提问于 2012-11-29 01:31:57
回答 1查看 169关注 0票数 3

它将棋盘引用到一个有9个插槽的游戏中,一旦插槽被填满,##while循环就会在没有任何空白点而我不知道如何修复它的情况下继续寻找新的点,请帮助!:(

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        computer = random.randint(0, 8)
        if board[computer] != 'X' and board[computer] != 'O':
            print computer
            board[computer] = 'O'
        else:
            while board[computer] == 'O' or 'X':
                counter = 0
                if counter > 15:
                    break
                computer = random.randint(0, 8)
                print computer
                if board[computer] != 'X' and board[computer] != 'O':
                    board[computer] = 'O'
                counter += 1
EN

回答 1

Stack Overflow用户

发布于 2012-11-29 01:34:10

因为or 'X'的计算结果始终为True,所以while语句始终返回TRUE值。首先,对board[computer] == '0'求值,如果为False,则转到or的右侧,即字符串X。您的代码中其他地方的模式确实是正确的,所以我怀疑这只是一个疏忽。

相反,您必须包括布尔比较的两个方面:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
while board[computer] == 'O' or board[computer] == 'X':

或者更好的是,您可以使用in

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
while board[computer] in ['O','X']:

或者,在评论中@icktoofay的礼貌,成语:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
while board[computer] in 'OX':

您的counter必须在循环外初始化为0,而不是在内部重新初始化。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # initialize outside the loop
 counter = 0
 while board[computer] == 'O' or 'X':
    # Don't re-initialize to 0 in the loop
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13617413

复制
相关文章
js实现HTML页面时钟动态显示
代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body οnlοad="startTime()"> <script> // var date = new Date(); // date.setFullYear(2010,1,11) // document.write(date) //时钟 function startTime() {
开心分享
2020/08/05
7.7K0
js实现HTML页面时钟动态显示
var mytime =setInterval(function () {getTime();},1000);function getTime() {var d =new Date();var t =d.toLocaleTimeString();document.getElementById("ptime").innerHTML =t;}
开心分享
2021/04/07
5.4K0
js jquery 实现html页面之间参数传递(单一参数、对象参数传递)
最近自己在忙着做毕业设计,后台程序员,前端菜鸡,因为需要,所以实现了html页面之间参数传递。------jstarseven 、菜鸡的自我修养.
大道七哥
2019/09/10
7.2K0
HTML5-JS操作页面滚动条(禁止、隐藏、显示、不显示)
不显示滚动条(css) ::-webkit-scrollbar { width: 0px; } 禁止页面滚动条(js) document.body.parentNode.style.overflowY = "hidden"; $("body").parent().css("overflow-y","hidden"); 启用浏览器滚动条(js) document.body.parentNode.style.overflowY = "auto"; $("body").parent().css("overflo
手撕代码八百里
2020/07/28
11K0
js传递数组到后台
方法一:  1.使用JSON.stringify 将数组对象转化成json字符串;
超级小可爱
2023/02/20
3.9K0
如何在html页面显示html标签源码
这是一篇不正经实现方案报道。 1 引言 先来看个问答: stackoverflow: Why was the xmp HTML tag deprecated? [duplicate] 这个问题感觉
celineWong7
2020/11/05
11.5K0
html页面显示乱码原因 原
<div class="col-md-3">        <div id="treeview4" class=""></div> </div>
tianyawhl
2019/04/04
7.1K0
如何将高德地图JS API嵌入到HTML网页内
先去https://lbs.amap.com/注册一下,直接用淘宝/QQ等OpenID既可实现注册。 没有要求实名制,填写姓名的时候,填写英文名。
繁华是客
2023/03/03
5K0
js跳转页面并刷新(本页面跳转)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128190.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/27
23.1K0
thymeleaf 传递数据到js变量
thymeleaf 传递数据到js变量 如何把控制器传来的model中的值传递给js变量呢? 需要以下两个: <script th:inline="javascript"> var message =
Dream城堡
2018/09/10
5.2K0
html页面显示服务器时间
lblTimer = $("#lbltimer"); d = new Date('<%=DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")%>'); lblTimer.children("span").text(getStr(d)) setInterval("setTimer()", 1000);
冰封一夏
2019/09/11
3.1K0
[开发技巧]·html实现返回页面并自动刷新
在进行APP开发或作制作网站时,有时候会遇到你下一级页面操作过以后会改变上一级页面的结果。这时候就需要我们去刷新上一级页面。 一般可以采取三种方式:
小宋是呢
2019/06/27
6.1K0
用js实现html页面水印
要在 HTML 页面中添加水印并防止截图,可以使用 JavaScript。以下是实现的基本步骤:
用户8703799
2023/04/10
4.4K0
html中嵌入iframe进行父子页面参数传递[通俗易懂]
1.父页面调用子页面函数,选择iframe的id + contentWindow +子页面的函数名([参数列表])
全栈程序员站长
2022/09/14
3.4K0
如何将 JavaScript 文件引入到 HTML
JavaScript,也缩写为 JS,是一种用于 Web 开发的编程语言。作为与 HTML 和 CSS 一起使用的 Web 核心技术之一,JavaScript 用于使网页具有交互性并构建 Web 应用程序。遵循通用显示标准的现代 Web 浏览器通过内置引擎支持 JavaScript,无需额外的插件。
梦溪
2021/09/08
12.3K1
点击加载更多

相似问题

如何在电报机器人中创建复选框列表?

220

如何在电报机器人中创建表单

23

如何在电报机器人中创建命令“Select a group”?

115

如何在Python电报机器人中使用ChosenInlineResultHandler

10

如何在电报机器人中显示选项?

210
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文