我想读入一个非文本文件。它的扩展名为".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")
关于python - 将非文本文件读入 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9652947/