ich spiele aus einer Laune heraus gerade mit folgendem. Vorab: Ja, ich bin mir bewusst das man eine (potentiell) große Datei nicht wie hier gezeigt öffnen sollte, dennoch interessiert mich was da passiert aus akademischem Wissensdurst heraus:
Ich habe rund 10 GB RAM frei:
Code: Alles auswählen
$ free -m
gesamt benutzt frei gemns. Puffer/Cache verfügbar
Speicher: 15683 4033 8458 668 3192 10714
Auslagerungsspeicher: 0 0 0
Code: Alles auswählen
$ readlink -f openSUSE-Leap-42.3-DVD-x86_64.iso
/home/mrichter/Downloads/Aufheben/openSUSE-Leap-42.3-DVD-x86_64.iso
$ ls -lh openSUSE-Leap-42.3-DVD-x86_64.iso
-rw-r--r-- 1 mrichter mrichter 4,4G Jan 30 17:45 openSUSE-Leap-42.3-DVD-x86_64.iso
Also mache ich folgendes unter Python 3.6.3:
Code: Alles auswählen
import os
os.chdir('/home/mrichter/Downloads/Aufheben')
with open('openSUSE-Leap-42.3-DVD-x86_64.iso') as isofile:
isocontent = isofile.read()
Traceback (most recent call last):
File "/home/mrichter/.virtualenvs/pycharm3.6.3/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 2869, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-4-88075b2fd8ed>", line 2, in <module>
isocontent = isofile.read()
File "/home/mrichter/.virtualenvs/pycharm3.6.3/lib/python3.6/codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
MemoryError