Skip to main content
 首页 » 编程设计

python之将非文本文件读入 Python

2025年05月04日11bjzhanghao

我想读入一个非文本文件。它的扩展名为".map",但可以用记事本打开。我应该如何通过python打开这个文件?

file = open("path-to-file","r")对我不起作用。它返回 No such file or directory: 错误。

这是我的文件的样子:

111 + gi|89106884|ref|AC_000091.1| 725803 TCGAGATCGACCATGTTGCCCGCCT IIIIIIIIIIIIIIIIIIIIIIIII 0 14:A>G 457 + gi|89106884|ref|AC_000091.1| 32629 CCGTGTCCACCGACTACGACACCTC IIIIIIIIIIIIIIIIIIIIIIIII 0 4:C>G,22:T>C 779 + gi|89106884|ref|AC_000091.1| 483582 GATCACCCACGCAAAGATGGGGCGA IIIIIIIIIIIIIIIIIIIIIIIII 0 15:A>G,18:C>G 784 + gi|89106884|ref|AC_000091.1| 226200 ACCGATAGTGAACCAGTACCGTGAG IIIIIIIIIIIIIIIIIIIIIIIII 1<br/>

如果我执行以下操作:

file = open("D:\bowtie-0.12.7-win32\bowtie-0.12.7\output_635\results_NC_000117.fna.1.ebwt.map","rb") 

它仍然给我 No such file or directory: 'D:\x08owtie-0.12.7-win32\x08owtie-0.12.7\\output_635\results_NC_000117.fna.1.ebwt.map'错误。这是因为该文件不是二进制文件还是我没有某些权限?

非常感谢您的帮助!

请您参考如下方法:

二进制文件应该使用二进制模式。

f = open("path-to-file","rb") 

但如果您没有适当的权限或不知道文件本身的格式,那将无济于事。

编辑:

显然您没有阅读错误消息,否则您会注意到它使用的文件名不是您期望的文件名。

f = open("D:\\bowtie-0.12.7-win32\\bowtie-0.12.7\\output_635\\results_NC_000117.fna.1.ebwt.map","rb") 
f = open(r"D:\bowtie-0.12.7-win32\bowtie-0.12.7\output_635\results_NC_000117.fna.1.ebwt.map","rb")