我开始学习Python,并希望用它来自动化一个过程。 该过程包括
问题是我尝试修改的文件是用一种利用SUB character运行的语言编写的。因此,当我尝试
时with open(myFile,'r') as file:
data = list(file)
data
不包含SUB字符以外的任何信息。
因此,我需要做两件事:
关于如何解决这个问题的任何建议?
由于
答案 0 :(得分:0)
你在Windows上吗?引用链接到SUB字符:
在CP / M,86-DOS,MS-DOS,PC DOS,DR-DOS及其各种派生词中,字符26也用于表示字符流的结束,从而用于终止用户输入交互式命令行窗口(因此,通常用于完成控制台输入重定向,例如由COPY CON:TYPEDTXT.TXT发起)。
虽然技术上不再需要指示文件的结尾,但到目前为止,许多文本编辑器和程序语言仍支持此约定......
文本模式下的Python 2.7将停留在CTRL-Z
字符(十六进制1A),因此以二进制模式打开文件:
示例:
# Create a file with embedded character 1Ah
with open('sub.txt','wb') as f:
f.write(b'abc\x1adef')
# Open in default (text) mode and read as much as possible
with open('sub.txt','r') as f:
print repr(f.read())
# Open in binary mode
with open('sub.txt','rb') as f:
print repr(f.read())
输出:
'abc'
'abc\x1adef'
答案 1 :(得分:0)
使用binary mode打开文件。
with open(myFile,'rb') as file:
for line in file:
print line