f = open(infile, mode = 'rb')
while f:
line = f.read(int(k))
ints = list(line)
print(type(line))
等等等等....理論上這應該讀取字節模式下的文件,因爲我加了「B」的模式...但是當控制檯輸出打印(類型(線))....它會返回類型字符串,而不是字節.....我做錯了什麼?
f = open(infile, mode = 'rb')
while f:
line = f.read(int(k))
ints = list(line)
print(type(line))
等等等等....理論上這應該讀取字節模式下的文件,因爲我加了「B」的模式...但是當控制檯輸出打印(類型(線))....它會返回類型字符串,而不是字節.....我做錯了什麼?
我想你應該使用Python 2.(2.6/2.7)str是一個8位字節,所以out顯示爲'str'。如果您使用上面的代碼使用Python 3,則會發現該類型(行)將顯示class 'bytes'
。
他們仍然是字符。所有'b'都會阻止換行結束。 編輯:其實在python 3中的字節類型是新的,並使用'b'將返回一個bytearray。
但是...根據這個:http://diveintopython3.org/files.html,類型應至少返回 –
2011-02-10 04:21:06