【问题标题】:IO Error Python on WindowsWindows 上的 IO 错误 Python
【发布时间】:2015-04-01 18:01:28
【问题描述】:

我在打开文件进行写入时遇到问题。我认为问题出在文件夹权限上,但是我已经检查了所有可能的内容(对 Windows 了解不多)并且看不到问题...文件夹的属性在属性中显示为蓝色阴影“只读” .我可以更改它,但是在重新打开属性框后,它会将属性返回为只读的蓝色阴影。在安全选项卡中,它显示我应该拥有所有权限(我拥有管理员权限)。 我可以使用 Microsoft 程序创建文件,但在使用 Python 时不能:

g=open("C:\Users\jilska\Desktop\WORK\data\MIS_CLEAN\new.txt", 'w')
---------------------------------------------------------------------------
IOError                                   Traceback (most recent call last)
<ipython-input-2-012d0f45fe10> in <module>()
----> 1 g=open("C:\Users\jilska\Desktop\WORK\data\MIS_CLEAN\new.txt", 'w')

IOError: [Errno 22] invalid mode ('w') or filename:  
'C:\\Users\\jilska\\Desktop\\WORK\\data\\MIS_CLEAN\new.txt' 

有什么想法可以解决这个问题吗?

【问题讨论】:

    标签: python windows io permissions


    【解决方案1】:

    路径有问题。 Python 将 MIS_CLEAN\new.txt 中的 \n 解释为换行符。有多种方法可以解决此问题,例如转义所有斜线:

    g=open("C:\\Users\\jilska\\Desktop\\WORK\\data\\MIS_CLEAN\\new.txt", 'w')
    

    【讨论】:

    • 在各种方式中,您还可以使用原始字符串或正斜杠。
    • 我试过双斜线,但似乎没有任何区别。此外,当我尝试使用通常的路径打开文件进行读取时,它工作正常。这不适用于任何路径位置吗?
    • 你能把你正在使用的更新行放在评论中吗?我已经完全尝试了我发布的内容并且它有效。
    • 对不起,我又试了一次,它确实奏效了!顺便说一句,为什么它只写出来有问题,而且读得很好?
    • 优秀。至于'r'工作正常,那实际上也应该失败。如果你改路径再次失败,然后把'w'改成'r',不就报错了吗?
    猜你喜欢
    • 1970-01-01
    • 2018-03-19
    • 1970-01-01
    • 2019-08-09
    • 2021-05-09
    • 2023-03-08
    • 2015-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多