0

我的代码是这样的:

self.data = open("/myData", "a")
self.data.close()

self.data = open ("myData", "r")


    self.master = Tk()       
    if (self.data.read()is not None):
        print 2
        print self.data.readlines()
        print 1

我通常在 2 和 1 之间得到一个空白打印。

我确实知道 myData 中写了一些东西。我尝试过其他打开 myData 的方法,例如

self.data = open ("/myData", "r")

这给了我“权限被拒绝”(是的,我确实对该文件具有读写权限,我检查过)

self.data = open ("/game-engineering/myData", "r")

这给了我“找不到文件”。

我犯了一些愚蠢的路径错误吗?我确实知道文件不是空的,如果我用手打开它,我会看到里面有什么。

4

1 回答 1

3

当您调用时read,您“使用”文件(光标移动到文件的末尾) - 因此,当readlines被调用时,它会立即命中 EOF 并返回一个空列表。

在大多数情况下(使用 readlines),您可以直接使用它,因为如果文件为空,您将获得一个空列表,因此您永远不会进入迭代。

于 2013-03-11T00:12:34.777 回答