在Python中,哪些文件可以读取为文本,哪些文件可以读取为二进制?

2024-04-27 04:30:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用open("page.html","r")读取一个HTML文件。我能毫无问题地做到这一点。我的问题是Python认为哪些文件是文本文件,哪些是二进制文件?例如,.css文件也是文本文件吗?如果我想在没有二进制模式的情况下读取二进制文件会发生什么?你知道吗


Tags: 文件htmlpage二进制模式情况opencss
2条回答

每个文件都可以看作二进制0和1s或ASCII字符(即文本)。在记事本或sublime之类的编程编辑器中打开文件时,您会将该文件视为ASCII字符或文本。像.html.css文件这样的文件在以ASCII字符文本格式打开和读取时是有意义的,但是您仍然可以以二进制模式打开和读取它们,这将是每个字符的二进制值,而不是人类可读的。你知道吗

关于某些文件,如.exe,您仍然可以将其作为ASCII字符打开并读取,但它们不是以ASCII字符生成的,因此当您在记事本中将其作为文本打开时,您会看到非人类可读的字符,它只是把每8个字节看作一个ASCII字符,但实际上这些字节可能是有意义的,例如当它们被计算机cpu读取时。你知道吗

读取文件的方式实际上取决于您想对其执行什么操作。你可以打开任何一个文件。然而,数据的读/写方式却大不相同。不以二进制模式读取二进制文件与在文本编辑器中打开相同的二进制文件非常相似;数据将被解释为ascii数据而不是二进制数据,并且会发生奇怪的事情。你知道吗

相关问题 更多 >