दिलचस्प पोस्ट
मैं SQL Server डेटाबेस में एक auto_increment प्राथमिक कुंजी कैसे जोड़ूं? कैसे एक UINavigationController करने के लिए एक सही बटन जोड़ने के लिए? मैं एक ArrayList की सामग्री को दूसरे में कैसे कॉपी कर सकता हूं? WPF वैश्विक अपवाद हैंडलर MySQL में दशमलव विभाजक बदलें दो mysqli क्वेरी SQLite – आप अलग-अलग डेटाबेस से तालिकाओं में कैसे शामिल हो सकते हैं? डेटाबेस या तालिका के लिए अनुक्रमित कैसे देखें? ऐप ठीक आईओएस 8 आईफोन सिम्युलेटर का आकार नहीं है I स्क्वायर का पता लगाने वाले वर्ग नहीं मिलते हैं फ्लेक्सबॉक्स रैप कैसे परिवर्तित करें? सी ++ कोड से यूएमएल उत्पन्न करना? mysql विदेशी कुंजी बाधा गलत तरीके से गठित त्रुटि है DataGridView पंक्ति शीर्षलेख में टेक्स्ट जोड़ना कोणीय 2/4 IE11 में काम नहीं कर रहा है

अजगर में मेमोरी एड्रेस एक्सेस करें

मेरा सवाल है: मैं अजगर में मेमोरी एड्रेस की सामग्री कैसे पढ़ सकता हूं? उदाहरण: ptr = id (7) मैं ptr द्वारा इंगित स्मृति की सामग्री को पढ़ना चाहता हूँ। धन्यवाद।

वेब के समाधान से एकत्रित समाधान "अजगर में मेमोरी एड्रेस एक्सेस करें"

Ctypes.string_at पर एक नज़र डालें यहाँ एक उदाहरण है यह एक पायथन 3 पूर्णांक के कच्चे डेटा संरचना को उछालता है उम्मीद है कि आप केवल एक व्यायाम के रूप में ऐसा कर रहे हैं। शुद्ध पायथन के साथ ऐसा करने का कोई कारण नहीं है

from ctypes import string_at from sys import getsizeof from binascii import hexlify a = 0x7fff print(hexlify(string_at(id(a), getsizeof(a)))) 

उत्पादन

 b'02000000d8191e1e01000000ff7f' 

अजगर में, आप आमतौर पर स्मृति को एक्सेस करने के लिए पॉइंटर्स का उपयोग नहीं करते हैं जब तक कि आप किसी सी एप्लिकेशन से इंटरफ़ेस न करें। यदि आपको वही जरूरत है, तो एक्सेसर फ़ंक्शन के लिए सीटीआईपी मॉड्यूल पर नज़र डालें।

"मैं स्मृति की सामग्री को पीटीआर द्वारा इंगित करना चाहता हूं"

सी में कोड लिखें। पायथन से कोड का उपयोग करें http://docs.python.org/extending/extending.html

क्या आप id(thing) के परिणाम से अजगर वस्तु को पाने के लिए "रिवर्स" id कोशिश कर रहे हैं? मुझे यह भी पता नहीं है कि यह किया जा सकता है, और यह निश्चित रूप से नहीं किया जाना चाहिए; यह कचरा संग्रह को हराने और स्मृति सुरक्षा की कमी के कारण पैदा करेगा यदि आपका प्रोग्राम ऐसा करता है, तो इसका अर्थ है कि आप चीजों ( id नंबर) के संदर्भ में प्रभावी रूप से संदर्भ देते हैं जो कि कचरा कलेक्टर को नहीं पता है संदर्भ हैं, इसलिए वह उन ऑब्जेक्ट को जारी कर सकता है जो आप अभी भी उपयोग कर रहे हैं (जो कि बाकी प्रोग्राम में होता है )।

यदि आप किसी सी एक्सटेंशन से या किसी चीज़ से वापस आ चुके पॉइंटर से कच्ची मेमोरी पढ़ने का प्रयास कर रहे हैं, तो अन्य जवाब आपकी सहायता कर सकते हैं।