タグ付けされた質問 「sys」



3
numpy配列のPythonメモリ使用量
pythonを使用していくつかの大きなファイルを分析していて、メモリの問題が発生しているため、sys.getsizeof()を使用して使用状況を追跡してきましたが、配列の数が多い場合の動作は奇妙です。これは、私が開かなければならないアルベドのマップを含む例です: >>> import numpy as np >>> import struct >>> from sys import getsizeof >>> f = open('Albedo_map.assoc', 'rb') >>> getsizeof(f) 144 >>> albedo = struct.unpack('%df' % (7200*3600), f.read(7200*3600*4)) >>> getsizeof(albedo) 207360056 >>> albedo = np.array(albedo).reshape(3600,7200) >>> getsizeof(albedo) 80 データはまだ残っていますが、オブジェクトのサイズである3600x7200ピクセルマップは、約200 MBから80バイトになりました。私の記憶の問題が終わってすべてを単純な配列に変換することを願っていますが、この動作は、trueの場合、情報理論や熱力学などの法則に何らかの形で違反すると思います。 getsizeof()がnumpy配列では機能しないと信じる傾向があります。何か案は?
156 python  numpy  sys 

2
Pythonのsys.pathはどこから初期化されますか?
Pythonのsys.pathはどこから初期化されますか? UPD:PythonはPYTHONPATHを参照する前にいくつかのパスを追加しています: >>> import sys >>> from pprint import pprint as p >>> p(sys.path) ['', 'C:\\Python25\\lib\\site-packages\\setuptools-0.6c9-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\orbited-0.7.8-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\morbid-0.8.6.1-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\demjson-1.4-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\stomper-0.2.2-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\uuid-1.30-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\stompservice-0.1.0-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\cherrypy-3.0.1-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\pyorbited-0.2.2-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\flup-1.0.1-py2.5.egg', 'C:\\Python25\\lib\\site-packages\\wsgilog-0.1-py2.5.egg', 'c:\\testdir', 'C:\\Windows\\system32\\python25.zip', 'C:\\Python25\\DLLs', 'C:\\Python25\\lib', 'C:\\Python25\\lib\\plat-win', 'C:\\Python25\\lib\\lib-tk', 'C:\\Python25', 'C:\\Python25\\lib\\site-packages', 'C:\\Python25\\lib\\site-packages\\PIL', 'C:\\Python25\\lib\\site-packages\\win32', 'C:\\Python25\\lib\\site-packages\\win32\\lib', 'C:\\Python25\\lib\\site-packages\\Pythonwin'] 私のPYTHONPATHは: PYTHONPATH=c:\testdir PYTHONPATHのパスの前のパスはどこから来るのでしょうか。
111 python  path  sys 

10
スクリプトからstdoutをキャプチャしますか?
次のようなことを行うスクリプトがあるとします。 # module writer.py import sys def write(): sys.stdout.write("foobar") ここで、write関数の出力をキャプチャして、さらに処理するために変数に格納するとします。素朴な解決策は次のとおりです。 # module mymodule.py from writer import write out = write() print out.upper() しかし、これは機能しません。私は別の解決策を考え出し、それは機能しますが、問題を解決するためのより良い方法があるかどうか教えてください。ありがとう import sys from cStringIO import StringIO # setup the environment backup = sys.stdout # #### sys.stdout = StringIO() # capture output write() out = sys.stdout.getvalue() # release …
89 python  stdout  sys 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.