python windows 下无法读取文件(100MB以上)
发布网友
发布时间:2022-05-24 18:26
我来回答
共1个回答
热心网友
时间:2023-10-25 02:19
# 默认open(...,'r') 是指用文本方式打开文件
trainfile = open('train-images.idx3-ubyte', 'r')
print 'start train file'
trainfile.read(16)
matrix_number = 10000
y =28 * 28 * matrix_number
line = trainfile.read(y) # 读取大小为y的或读取到回车换行符
print len(line)
>pythonw -u "readit.py"
start train file
159
>Exit code: 0 Time: 0.378
# 换成指定为以二进制格式打开文件
trainfile = open('train-images.idx3-ubyte', 'rb')
print 'start train file'
trainfile.read(16)
matrix_number = 10000
y =28 * 28 * matrix_number
line = trainfile.read(y)
print len(line)
>pythonw -u "readit.py"
start train file
7840000
>Exit code: 0 Time: 0.541追问谢谢回答,但是为什么在ubuntu下好使呢?
追答道理说不清,但现象上看: ubuntu下的默认打开模式为bin,而windows下的默认打开模式为text
:(
建议用指定明确的模式 'rb' / 'rt' 来打开文件,就不会出现不同平台的不同效果了