(Python 2.7)尝试将字符串附加到列表时出现语法错误

(Python 2.7)尝试将字符串附加到列表时出现语法错误,python,syntax-error,global-variables,Python,Syntax Error,Global Variables,嗨!我正在编辑我在网上找到的一个用Python 2.7编写的脚本。我只写过3.8版本的代码,所以我不完全熟悉这些变化。还是Python 3.8的初学者 我添加了一些代码将字符串附加到列表中,但每当我尝试运行脚本时,它都会抛出以下语法错误: 下面是它引用的代码片段: for r in range(0,self.__length): for c in range(0,self.__width): if self.__map[r][c] in (WALL,PER

嗨!我正在编辑我在网上找到的一个用Python 2.7编写的脚本。我只写过3.8版本的代码,所以我不完全熟悉这些变化。还是Python 3.8的初学者

我添加了一些代码将字符串附加到列表中,但每当我尝试运行脚本时,它都会抛出以下语法错误:
下面是它引用的代码片段:

for r in range(0,self.__length):
        for c in range(0,self.__width):
            if self.__map[r][c] in (WALL,PERM_WALL):
                print '#'
                global mapdatalist.append("#")
            else:
                print '.'
                global mapdatalist.append(".")
它指的是
mapdatalist.append(“#”)
位。
我已经阅读了列表函数上的部分,从我所阅读的内容来看,我做得很好。

任何有经验的人都能帮我吗?谢谢

不能将
全局
声明与这样的表达式组合在一起。在函数开头使用
global-mapdatalist
一次,然后正常使用
mapdatalist
(例如
mapdatalist.append(“#”)
)。(无论您使用哪种版本的Python,这都是相同的。)

假设您希望向全局变量
mapdatalist
附加一个字符串, 您应该在使用变量之前声明全局变量

试试这个:

global mapdatalist
for r in range(0,self.__length):
        for c in range(0,self.__width):
            if self.__map[r][c] in (WALL,PERM_WALL):
                print '#'
                mapdatalist.append("#")
            else:
                print '.'
                mapdatalist.append(".")

您希望
global-mapdatalist.append(“#”)的确切含义是什么?