6
tempfile.SpooledTemporaryFile()
的參數max_size
是可裝入內存的臨時文件的最大大小(在將其泄漏到磁盤之前)。這個參數的單位是什麼(字節?千字節?)?文檔(對於Python 2.7和Python 3.4)都沒有指出這一點。SpooledTemporaryFile:最大(內存中)大小的單位?
tempfile.SpooledTemporaryFile()
的參數max_size
是可裝入內存的臨時文件的最大大小(在將其泄漏到磁盤之前)。這個參數的單位是什麼(字節?千字節?)?文檔(對於Python 2.7和Python 3.4)都沒有指出這一點。SpooledTemporaryFile:最大(內存中)大小的單位?
大小以字節爲單位。來自SpooledTemporaryFile()
source code:
def _check(self, file):
if self._rolled: return
max_size = self._max_size
if max_size and file.tell() > max_size:
self.rollover()
和file.tell()
給出了一個以字節爲單位的位置。
我會說任何使用術語size
與Python文件對象而不是以字節表示的任何用法都需要明確提及。根據size
處理的所有其他文件方法也總是以字節爲單位。
好點,大約字節是標準的。然而,這是一個隱含的規則,需要對Python有很好的瞭解:我認爲'SpooledTemporaryFile()'應該明確指出大小是以字節爲單位的,這樣任何人都可以使用它,而沒有太多的Python文化。我會在這方面開一個問題。 – EOL 2015-04-01 14:57:56
@EOL:我不確定這是否有必要;在C或Java或C#或任何其他語言中,當處理與字節處理的文件對象或Unicode支持代碼點時。只有在處理更高級別的API或用戶界面時纔會開始查看其他單元。 – 2015-04-01 15:00:10
我相信,在文檔中添加「以字節爲單位」並不需要花費太多的時間:與擁有相同問題的人所花費的時間相比,這可能會花費更少的時間。我有這個問題是因爲你的答案之一(從2012年開始),你使用1024 * 10的大小:這是非常小的,所以我真的想知道它們是否是字節。 – EOL 2015-04-01 15:04:42