Bagaimanakah kod saya menemui nama objek dalam Python?

WBOY
Lepaskan: 2023-08-19 14:57:14
ke hadapan
1025 orang telah melayarinya

Bagaimanakah kod saya menemui nama objek dalam Python?

Tidak, tiada cara dalam Python untuk menemui nama objek. Sebabnya ialah objek sebenarnya tidak mempunyai nama.

Katakan kita mempunyai kod berikut. Di sini kita tidak dapat mencari nama contoh sebenar. Oleh kerana kedua-dua ob1 dan ob2 terikat pada nilai yang sama, kita tidak boleh membuat kesimpulan sama ada nama contoh bagi ob1 atau ob2 adalah sama −

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

# Creating a Demo Class
class Demo:
   pass

Example = Demo
ob1 = Example()
ob2 = ob1

print(ob2)
print(ob1)
Salin selepas log masuk

Output

<__main__.Demo object at 0x00000250BA6C5390>
<__main__.Demo object at 0x00000250BA6C5390>
Salin selepas log masuk

Seperti yang kita lihat di atas, kita tidak boleh memaparkan nama sebenar objek tersebut. Walau bagaimanapun, kami boleh memaparkan kejadian dan kiraan, seperti yang ditunjukkan dalam contoh di bawah.

Dapatkan contoh kelas

Dalam contoh ini, kami mencipta kelas Demo dengan empat kejadian -

ob1 = Demo()
ob2 = Demo()
ob3 = Demo()
ob4 = Demo()
Salin selepas log masuk

Kami mengulangi objek dalam ingatan −

for ob in gc.get_objects():
Salin selepas log masuk

Contoh

Menggunakan fungsi isinstance(), setiap objek akan disemak sama ada ia adalah tika kelas Demo. Mari lihat contoh lengkap -

import gc

# Create a Class
class Demo:
   pass

# Four objects
ob1 = Demo()
ob2 = Demo()
ob3 = Demo()
ob4 = Demo()

# Display all instances of a given class
for ob in gc.get_objects():
   if isinstance(ob, Demo):
      print(ob)
Salin selepas log masuk

Output

<__main__.Demo object at 0x7f18e74fe4c0>
<__main__.Demo object at 0x7f18e7409d90>
<__main__.Demo object at 0x7f18e7463370>
<__main__.Demo object at 0x7f18e7463400>
Salin selepas log masuk

Paparkan bilangan kejadian kelas

Dalam contoh ini kami akan mengira kejadian dan memaparkan −

Contoh

import gc

# Create a Class
class Demo(object):
   pass

# Creating 4 objects
ob1 = Demo()
ob2 = Demo()
ob3 = Demo()
ob4 = Demo()

# Calculating and displaying the count of instances
res = sum(1 for k in gc.get_referrers(Demo) if k.__class__ is Demo)
print("Count the instances = ",res)
Salin selepas log masuk

Output

Count the instances = 4
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah kod saya menemui nama objek dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan