Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.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 非面向Ubuntu的pygame platformer无法在Ubuntu以外的任何设备上正确加载级别_Python_Linux_Pygame_Cross Platform_Compatibility - Fatal编程技术网

Python 非面向Ubuntu的pygame platformer无法在Ubuntu以外的任何设备上正确加载级别

Python 非面向Ubuntu的pygame platformer无法在Ubuntu以外的任何设备上正确加载级别,python,linux,pygame,cross-platform,compatibility,Python,Linux,Pygame,Cross Platform,Compatibility,我一直在基于的pygameplatformer上工作。我在Ubuntu机器上写的,在其他操作系统上似乎不起作用 生成代码如下所示: levelFile = tkFileDialog.askopenfile(mode='r', defaultextension='.lvl', filetypes=[('Level File', '*.lvl')], parent=tk) level = levelFile.read().split("\n") del level[len(level) - 1]

我一直在基于的
pygame
platformer上工作。我在Ubuntu机器上写的,在其他操作系统上似乎不起作用

生成代码如下所示:

levelFile = tkFileDialog.askopenfile(mode='r', defaultextension='.lvl', filetypes=[('Level File', '*.lvl')], parent=tk)
level = levelFile.read().split("\n")
del level[len(level) - 1]

# Add platforms to array based on level string
我在文本编辑器中使用ASCII字符来表示不同的分幅

它在我的Ubuntu机器上运行得很好,但在MacBookAir和Windows笔记本电脑上运行时就不行了。标高布局未按预期加载(瓷砖加载到意外位置,相机位置混乱)


有人知道发生了什么事情以及如何修复吗?

如果在linux下创建文件,则级别文件中的行分隔符取决于操作系统,它将在windows下使用“\n”\r\n”,因此这可能是它无法工作的原因。我认为您应该使用os.linesep而不是“\n”将文件拆分为行

level = levelFile.read().split(os.linesep)

您所说的“级别未正确生成”是什么意思?您需要更具体一些。寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:。这意味着不要丢弃335行代码,并期望我们为您调试它。