In C++, le variabili locali sono memorizzate nello stack, mentre i dati creati dal nuovo operatore sono memorizzati nell'heap. Quindi, per quanto riguarda le variabili in Python? Dove sono memorizzati?Dove sono memorizzate le variabili in Python?
risposta
Copia da Python documentation:
gestione della memoria in Python comporta un mucchio privato che contiene tutti gli oggetti Python e le strutture dati. La gestione di questo heap privato è assicurata internamente dal gestore di memoria Python. Il gestore della memoria Python ha componenti diversi che si occupano di vari aspetti della gestione dinamica dello storage, come la condivisione, la segmentazione, la preallocazione o il caching.
Questo è fuorviante - sebbene dal punto di vista del codice C, la roba di Python è generalmente nell'heap, python ha ancora il proprio stack di chiamate. – Marcin
@Marcin: questo è tratto dalla documentazione ufficiale di Python e la stessa risposta è fornita ad altre domande collegate. L'unica cosa da aggiungere qui è che questo è specifico per CPython, che comunque è l'implementazione più utilizzata di Python. – dkar
Solo perché proviene da un documento ufficiale, non significa che si applica a questa domanda. Prima di tutto, questa domanda riguarda le variabili; in secondo luogo il documento parla di come appare l'interprete CPython durante la programmazione in C. – Marcin
- 1. Linux: dove sono memorizzate le variabili d'ambiente?
- 2. Dove sono le variabili costanti memorizzate in C?
- 3. Dove sono memorizzate le variabili d'ambiente nel registro?
- 4. Dove sono memorizzate le variabili globali come $ _GLOBAL, $ _POST ecc.?
- 5. Dove sono memorizzate le macro registrate in Notepad ++?
- 6. In quale oggetto sono memorizzate le variabili globali di Javascript?
- 7. Dove sono memorizzate le variabili in una chiusura: stack o heap?
- 8. Dove sono memorizzate le variabili di istanza in un modulo helper di Rails?
- 9. Dove vengono memorizzate le variabili catturate dalla chiusura?
- 10. Le variabili di stack C sono memorizzate al contrario?
- 11. Dove sono memorizzate le immagini della finestra mobile da boot2docker?
- 12. Dove sono memorizzate le configurazioni di debug di Eclipse CDT?
- 13. Dove sono archiviate le variabili locali .NET?
- 14. Come vengono memorizzate le variabili nella ricorsione?
- 15. Dove vanno le variabili locali statiche
- 16. Perché le password originali non sono memorizzate?
- 17. dove vengono memorizzate le variabili della libreria condivisa quando collegate a un'applicazione
- 18. Le sessioni sono memorizzate solo in un browser?
- 19. Dove memorizzi le variabili in jinja?
- 20. Dove si trovano le funzioni di un oggetto memorizzate?
- 21. Dopo la distribuzione tramite ClickOnce, dove sono memorizzate le DLL sul computer client?
- 22. Dove sono archiviate le classi Java in Oracle?
- 23. Dove sono documentate le funzioni Python di bitbake
- 24. Le variabili python "globali" (modulo) sono thread locali?
- 25. Quali sono le variabili pure?
- 26. Le procedure JavaScript memorizzate MongoDB sono più veloci?
- 27. Le informazioni di accesso APN sono memorizzate su schede SIM?
- 28. Dove sono le grammatiche dell'albero in ANTLR4?
- 29. Dove sono le annotazioni JDBC4?
- 30. Dove vengono memorizzate le costanti di stringa da GCC e da dove vengono mappati questi puntatori?
correlati: http://stackoverflow.com/questions/14546178/does-python-have-a-stack-heap-and-how-is-memory-managed –
correlate: http://stackoverflow.com/questions/2353552/cpython-internally-what-is-stored-on-the-stack-and-heap –
@AshwiniChaudhary Grazie mille! – injoy