Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在特殊情况下使用print命令_Python - Fatal编程技术网

Python 在特殊情况下使用print命令

Python 在特殊情况下使用print命令,python,Python,有没有一种方法可以在事后使用打印如果没有突击队,那么如何使用 def Move(self, tile, startx, starty): if self.board[xstart][ystart] != ' ' or not self.isOnBoard(xstart, ystart): print('The coordinates is not on the board') return False 问题是,当我输入一个位于游戏板之外的坐标时,它只会

有没有一种方法可以在事后使用
打印
如果没有
突击队,那么如何使用

def Move(self, tile, startx, starty): 
    if self.board[xstart][ystart] != ' ' or not self.isOnBoard(xstart, ystart):
        print('The coordinates is not on the board')
        return False
问题是,当我输入一个位于游戏板之外的坐标时,它只会在我希望函数中断并打印该移动无效时给我错误——PythonGirl

鉴于此。您似乎想测试startx和starty是否存在于板上(我假设是一个预定义的板)的有效性。在这种情况下,重新安排测试不会解决它。当您第一次测试这些值是否存在时(通过self.board[xstart][ystart]),而没有实际测试它们是否在带有isOnBoard函数的板上

def Move(self, tile, startx, starty):
if not self.isOnBoard(xstart, ystart) or self.board[xstart][ystart] == ' ':
    print('The coordinates is not on the board')
    return False

我不知道车载功能内部发生了什么;也许是类似的

但是当你检查的时候

   if self.board[xstart][ystart] != ' ' 
当xstart和/或ystart超出有效范围(我假设这就是您所说的“不在板上”的意思)时,您将得到一个错误,因为您试图访问一些不存在的内容

在使用xstart和ystart之前,需要检查它们的值是否在有效范围内

如果这就是你在isOnBoard中所做的,你应该首先检查它,然后检查板上该点的内容


如果您提供isOnBoard的代码,如果它工作不正常,我们可能会帮助您。

请添加一个示例,其中包含示例输入和请求的输出……这就是您的代码的外观吗?如果是,您需要缩进您的
打印
中断
语句。@Avión请不要这样说!我们是通用的ly不希望人们粘贴他们所有的代码:我们希望看到一个。
如果没有板载(x,y):打印('not Valid')
如果板载(x,y)将打印
返回一个错误的ish值。因此,您应该尝试制作一个MCVE:我们可以运行的程序的精简版本,它也有同样的问题。将其发布到此处,我们将帮助您调试。如果足够短,请确保包含
板载
函数。