Python:有关文件打开的一个问题

如题,明明已经在桌面创建了一个文件,但是用open()还是打不开。也打不开已经创建好的python文件。

img

给绝对路径。
比如:

f = open(r'C:\path\to\text.txt', 'r', encoding='UTF-8')

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7412977
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Python学习笔记:open()函数打开文件路径报错问题
  • 您还可以看一下 Sniper.ZH老师的Python专题精讲 文件目录与系统参数操作课程中的 文件和目录操作小节, 巩固相关知识点
  • 除此之外, 这篇博客: Python文件模式及操作详解中的 一、open() 方法 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:

    open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数。

    如果该文件无法被打开,会抛出 OSError。

    open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

    完整的语法格式为:

    open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
    

    参数说明:

    1、file: 必需,文件路径(相对或者绝对路径)。

    例如:
    采用相对路径“f = open("…/test.txt",mode=‘w’)”打开上级文件夹的“test.txt”文件。

    采用绝对路径“f = open(“d:/test.txt”,mode=‘w’)”打开D盘根文件夹的“test.txt”文件。

    2、mode: 可选,文件打开模式。

    默认值为‘rt’,表示只读文本模式。

    3、buffering: 可选,设置缓冲。

    缺省或设置为-1时,默认是8192个字节,8192/1024 = 8k。
    设置为 0 时,表示不使用缓冲区,直接读写,仅在二进制模式下有效。
    设置为 1 时,表示在文本模式下使用行缓冲区方式。
    设置为 大于1 时,表示缓冲区的设置大小。

    4、encoding: 一般使用utf8。

    5、errors: 报错级别。

    6、newline: 区分换行符。

    7、closefd: 传入的file参数类型。

    8、opener: 设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^