【问题标题】:QPython - Reading a fileQPython - 读取文件
【发布时间】:2015-02-19 12:39:31
【问题描述】:

我已经在我的 Android 手机中安装了 QPython。 我在 QEdit 中写了一条语句,从下面的路径读取文本文件

/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt

我使用了下面的语句

fob=open('/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt','r')
fob.read()

如果我运行该语句,它会抛出错误:

IOError:[Errno 2] No such file or directory: '/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt'
1|uo_a116@cancro:/ $

以上说法正确吗?

【问题讨论】:

  • 该代码对我有用,只需确保您的键盘产生正常的单引号:' ' 而不是' '。

标签: android python qpython


【解决方案1】:
fob=open('File1.txt','r')

在 1.0.4 版中不工作。

fout=open('File2.txt','w')

在 0.9.6 版上工作,但在 1.0.4 版上不工作。 “错误”是只读文件系统。

看起来像是(新的 1.0.4)文件系统库中的限制。我给编辑发了一封邮件,但目前没有回复。

【讨论】:

    【解决方案2】:

    为了测试,请尝试写入指向您的文件的绝对路径,例如,指向 sdcard (/sdcard/out.txt)。 我在这个版本(> = 1.0.4)上遇到了问题,因为脚本更改的启动过程和执行目录与脚本目录不同。 我不得不更改我的脚本以指向绝对路径。 用qpython开发者测试过。

    查看此链接:

    https://github.com/qpython-android/qpython.org/issues/48

    【讨论】:

      【解决方案3】:

      你也可以试试这么简单:

      fob=open('File1.txt','r')
      fob.read()
      

      只要脚本在文件的同一个文件夹中。

      【讨论】:

        【解决方案4】:

        您可以在读取文件之前使用脚本将当前工作目录更改为路径:

        import os
        os.chdir(os.path.dirname(os.path.abspath(__file__)))
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-04-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-12-30
          相关资源
          最近更新 更多