【问题标题】:Can I open any file with any extension using python? [closed]我可以使用python打开任何扩展名的文件吗? [关闭]
【发布时间】:2022-01-11 03:11:51
【问题描述】:

我是一个新的编码员,我对 python 不太了解。在网上冲浪时,我发现您可以通过 python 打开文件。所以我的问题是我可以通过python打开任何文件扩展名/自定义文件扩展名吗?我也可以将其打开为 .txt 吗?如果您回答,请同时提供代码!如果可能的话。

【问题讨论】:

  • 不要认为文件是有类型的。文件类型指定如何解释文件的内容,但实际上与内容本身没有任何关系。您可以将图像文件作为文本文件打开就可以了。当然,你只会看到一堆乱码。数据就是数据,您可以毫无问题地将 .png 重命名为 .txt。
  • 是的,扩展没有任何意义,这里主要是为人类服务的。这并不意味着 python 可以解释任何文件,但它肯定可以读取原始内容。

标签: python python-3.x encoding computer-science decoding


【解决方案1】:

所以我的问题是我可以通过 python 打开任何文件扩展名/自定义文件扩展名吗?我也可以以 .txt 格式打开它吗?

是的,是的!

您可以通过以下方式在 python 中打开任何文本文件:

with open("filename.txt") as x:
    ...

假设您想读取文本文件的内容,那么您可以这样做:

with open("filename.txt", "r") as f:
    print(f.read())

这个程序会打印filename.txt的内容,注意到那边的"r"了吗?它是指定您使用文件的模式(简单来说,如读/写)

另外,您在阅读时不必提及任何模式,因为"r"是默认模式,但您可以明确说明

您可以使用几种可用的“模式”打开文件:

只读 (‘r’):打开文本文件进行阅读。句柄位于文件的开头。如果文件不存在,则引发 I/O 错误。如前所述,这也是打开文件的默认模式。

Read and Write (‘r+’):打开文件进行读写。句柄位于文件的开头。如果文件不存在则引发 I/O 错误

Write Only (‘w’):打开文件进行写入。对于现有文件,数据将被截断并覆盖。句柄位于文件的开头。如果文件不存在,则创建文件。

Write and Read (‘w+’):打开文件进行读写。对于现有文件,数据将被截断并覆盖。句柄位于文件的开头。

Append Only (‘a’):打开文件进行写入。如果文件不存在,则创建该文件。句柄位于文件的末尾。正在写入的数据将插入到末尾,在现有数据之后。

Append and Read (‘a+’):打开文件进行读写。如果文件不存在,则创建该文件。句柄位于文件的末尾。正在写入的数据将插入到末尾,在现有数据之后。

您也可以通过以下方式打开文件:

name = open(...)

但这通常不是最佳做法,因为您必须稍后手动关闭文件。

所以我的问题是我可以通过 python 打开任何文件扩展名/自定义文件扩展名吗?

是的。例如,您可以打开图像并以与上述类似的方式从中读取字节。

【讨论】:

  • 但是我可以打开一个我自己的扩展名(例如 .Svc 、 .abc )的文件,其中包含文本形式的数据吗?
  • @NewbieCoder 完全相同的步骤,但不要有一个名为 .abc 的文件,它用于音乐符号,也许将其命名为 .abcd。您可以使用with open("name.abcd") 打开文件,然后按照帖子中的说明阅读。
猜你喜欢
  • 2011-02-07
  • 1970-01-01
  • 1970-01-01
  • 2013-04-03
  • 2021-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-10
相关资源
最近更新 更多