python中的行继续符后出现意外字符

问题描述

我正在尝试用python构建俄罗斯方块游戏,但遇到与上述代码有关的上述错误。我已尝试取出任何斜线,但仍然无法正常工作。谁能帮助新手?

# SHAPE FORMATS

S = [[\'.....\',\'.....\',\'..00.\',\'.00..\',\'.....\'],[\'.....\',\'..0..\',\'...0.\',\'.....\']]

解决方法

在示例中无需转义单引号。

尝试:

S = [['.....','.....','..00.','.00..','.....'],['.....','..0..','...0.','.....']]

,

字符'用于表示字符串,

s = 'this is a string'

为了在字符串中使用字符',可以在它们前面加上\

s = 'this string has a \' in it'

通过使用\来判断,您希望每行的每一侧都有一个'。这意味着您仍然需要一组'来包裹实际的字符串:

S = [['\'.....\'','\'.....\'','\'..00.\'','\'.00..\'','\'.....\''],['\'.....\'','\'..0..\'','\'...0.\'','\'.....\'']]

相反,如果您只希望每行两边都没有'的行,则看起来像这样:

S = [['.....','.....']]
,

您不需要转义单引号。 您可以在多行字符串中使用三引号,并使用this trick to start the first line with """\ so you don't get unwanted leading newline

然后,您可以使用.split()将两个字符串分成两个子列表。

S = [ """\
.....
.....
..00.
.00..
.....""".split(),"""\
.....
..0..
..00.
...0.
.....""".split() ]