私は、Ubuntu 16.04でpython3 myscript.py
を使用してPythonスクリプトを実行しています。スクリプトがメモリに読み込まれているか、hddの行ごとに読み込まれて解釈されていますか?それが一度にロードされていない場合、メモリにロードされているチャンクの大きさを知っているか制御する方法はありますか?pythonスクリプトを実行するとメモリにロードされますか?
0
A
答えて
4
メモリ全体がロードされます。最後に近い構文エラーがプログラムを直ちに中止するため、これが当てはまるはずです。それを試してみてください。
これを制御または設定する方法は必要ありません。それは確かに最も良い実装の詳細です。これに関連する問題がある場合(スクリプトがRAMよりも大きいなど)、別の方法で解決できます。
1
あなたが使用する「スクリプト」は、人間が見やすい表現です。 Pythonはそのスクリプトを開き、行を読み込み、それらをトークン化し、構文解析とastツリーを作成し、dis
モジュールを使って見ることができるバイトコードを出力します。
"script"はロードされていません。コードオブジェクト(生成された命令を含むオブジェクト)はロードされています。そのプロセスに直接影響する方法はありません。私は、あなたがチャンクでそれを読む必要があるほど大きなスクリプトがあることは聞いたことがない、あなたがそれを達成すれば驚くだろう。
関連する問題
- 1. 実行前にLuaスクリプトがメモリにロードされていますか?
- 2. SVG:ドキュメントがロードされたときにスクリプトを実行する
- 3. システムでPythonスクリプトを実行すると、モジュールがロードされない
- 4. LaravelでPythonスクリプトを実行すると、スクリプトは実行されますが、完全に実行されませんか?
- 5. スクリプトを手動で実行すると完全に実行されますが、別のスクリプトから実行されたときにコマンドが失われます
- 6. Pythonスクリプトは、実行時にメモリ内で自身を識別できますか?
- 7. 実行された変数をpythonスクリプトに保存します
- 8. 角度スクリプトが実行されますページのロード後(解雇)
- 9. Pythonスクリプトはインタプリタで実行されますが、コマンドラインから
- 10. divがロードされているときにjqueryスクリプトを実行することができませんDOMロードの前にjqueryコードを実行します
- 11. Pythonコードを実行することによって使用される総メモリ
- 12. Pythonスクリプトを実行する
- 13. Tkinter:ボタンで実行されるpythonスクリプトにパラメータを渡す
- 14. (Pdb)がPythonスクリプトの実行時に表示されます
- 15. Slider Revolution - 各スライドがロードされるたびにjQueryスクリプトを実行します。
- 16. cronで実行するPHPスクリプトをロード
- 17. コマンドプロンプトからPythonスクリプトを実行する
- 18. SASからPythonスクリプトを実行する
- 19. PythonスクリプトからBlenderを実行する
- 20. シェルからPythonスクリプトを実行する
- 21. Pythonスクリプトが実行されない
- 22. Python CGIスクリプトが実行されない
- 23. Pythonコードは対話型プロンプトで実行されますが、スクリプトとしては実行されません
- 24. rootとして実行されるシェル・スクリプトからoracleユーザーとしてoracleスクリプトを実行します。
- 25. 外部スクリプトがロードされた後にVueコンポーネントのメソッドを実行します。
- 26. IE上のJavascriptによってロードされたスクリプトを実行
- 27. pythonスクリプトを実行するには?
- 28. pythonスクリプトからテキストファイルに保存されたLinuxコマンドを実行するには?
- 29. Pythonスクリプトを実行するさまざまな方法
- 30. ディレクトリが更新されたときにPythonスクリプトを実行する
スクリプトの読み込み量を制御して解決しようとしている問題を追加してください。スクリプトを読むだけでメモリが足りなくなる恐れがありますか? –
すべてのコードをメモリにロードする必要があります。これはかなり明白です。私が見てきたことから、定義されている上からトップレベルの関数を呼び出すことはできないので、行ごとに関数をロードするようです。 – byxor
@musically_ut私はちょうど通訳がそれをしているかと思っていた。好奇心のように、記憶がなくなる恐れがありません。 – NeoTheThird