Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah petunjuk dalam Python? Adakah petunjuk wujud dalam Python?

Apakah petunjuk dalam Python? Adakah petunjuk wujud dalam Python?

PHPz
PHPzke hadapan
2023-08-19 11:09:262591semak imbas

Apakah petunjuk dalam Python? Adakah petunjuk wujud dalam Python?

Bahasa pengaturcaraan peringkat rendah, seperti C atau C++, sering menggunakan penunjuk untuk memanipulasi memori secara langsung. Mereka membolehkan pengurusan memori yang cekap dan operasi data peringkat rendah.

Kerumitan peringkat rendah pentadbiran ingatan diabstrakkan dalam Python, bahasa peringkat tinggi Oleh sebab itu, Python tidak mempunyai petunjuk ekspres dalam cara yang sama seperti C atau C++, sebagai alternatif, Python menggunakan idea yang setanding yang ini dikenali sebagai rujukan, yang membolehkan akses tidak langsung kepada objek dalam ingatan oleh pembolehubah Python memberikan pembina kit alat yang kukuh tanpa memerlukan mereka untuk mempunyai penghargaan menyeluruh terhadap pentadbiran memori peringkat rendah melalui penggunaan rujukan dan abstraksi peringkat tinggi yang lain.

Dalam Python, semuanya adalah objek, dan objek disimpan dalam ingatan. Secara berkesan, apabila anda mentakrifkan pembolehubah dalam Python, anda mencipta rujukan kepada objek. Rujukan ini sebenarnya bertindak sebagai penunjuk ke mana objek disimpan dalam ingatan.

Pertimbangkan kod di bawah, sebagai contoh.

a = 5
b = a
  • a = 5 − Pernyataan Python "a = 5" mengisytiharkan pembolehubah baharu dan memberikannya nilai integer 5. Python menghasilkan objek integer baharu dengan nilai 5 apabila baris ini dilakukan, dan ia kemudian memberikan merujuk kepada objek tersebut kepada pembolehubah a.

  • b = a − Dalam cara yang setanding, pernyataan b = a mengisytiharkan pembolehubah baru b dan menawarkannya nilai a Memandangkan objek (dalam kes ini, objek integer dengan nilai 5) dirujuk melalui a objek (a), kemudian objek (b) juga dirujuk dengan menggunakan objek (a). Hasilnya, rujukan kepada objek integer bernilai 5 yang sama kini dikongsi dengan cara setiap a dan b.

Ini penting kerana ini bermakna perubahan yang dibuat kepada wasiat juga dicerminkan dalam b kerana kedua-duanya merujuk kepada objek yang sama, contohnya −

Contoh

a = 5
b = a
a = 6
print(b)

Output

5

Seperti yang dijangkakan, ya? Untuk memahami contoh kod di atas, ikuti langkah mudah ini −

  • a = 5 − Baris kod ini mencipta pembolehubah baharu bernama a dan memberikannya nilai 5.

  • b = a − Pembolehubah baru b dicipta dan diberikan nilai a Pembolehubah b memegang nilai integer 5 yang sama dengan pembolehubah a.

  • .
  • a = 6 − Ini menukar nilai integer pembolehubah a kepada nilai baharu 6. A kini mempunyai rujukan kepada objek integer yang berbeza daripada b pada masa ini.

  • print(b) − Ini mengeluarkan nilai b ke konsol Output baris ini ialah 5 kerana b masih mempunyai rujukan kepada objek integer awal dengan nilai 5.

  • .

Pengurusan memori ialah isu penting dalam pengaturcaraan, dan Python menggunakan pengumpulan sampah berkomputer untuk mengurusnya Pengumpul sampah Python menjaga peruntukan memori dan deallocation secara automatik manakala, dalam C atau C++, pembangun bertanggungjawab untuk pengurusan memori.

Pengumpul sampah Python secara automatik mengalih keluar objek yang dirujuk melalui pembolehubah daripada ingatan apabila ia tidak lagi diperlukan.

Ini menghilangkan keinginan untuk pengurusan memori berpandu dan membebaskan pembina untuk menumpukan perhatian mereka pada menulis kod, dan bukannya trauma tentang melepaskan ingatan Akhirnya, siri sampah automatik Python menyediakan cara yang lebih mudah dan kurang ralat untuk mengendalikan pengurusan kenangan.

Kesimpulan

Ringkasnya, Python tidak lagi mempunyai penunjuk eksplisit seperti C atau C++, tetapi ia menggunakan rujukan, iaitu konsep kebolehbandingan. Python menyediakan segala-galanya sebagai objek, dan pembolehubah sebagai penunjuk kepada objek ini. Jadi apabila anda memberikan nilai kepada pembolehubah, ini bermakna anda menunjuk kepada sesuatu dalam ingatan. Memahami sistem rujukan Python adalah penting kerana ia merupakan komponen utama bagaimana bahasa mengurus ingatan.

Dengan memahami rujukan, anda boleh lebih memahami cara pengubahsuaian pada objek disebarkan melalui pembolehubah yang merujuknya. Ini boleh membantu anda menulis kod yang lebih cekap dan menguntungkan serta mengelakkan perangkap biasa yang berkaitan dengan pengurusan memori. Oleh itu, memahami rujukan adalah langkah penting untuk menjadi pengaturcara Python yang mahir.

Atas ialah kandungan terperinci Apakah petunjuk dalam Python? Adakah petunjuk wujud dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam