Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menyemak sama ada objek boleh diubah dalam Python?
Objek boleh lelar ialah objek yang semua elemennya boleh diulang menggunakan gelung atau fungsi boleh lelar. Senarai, rentetan, kamus, tupel, dsb. semuanya dipanggil objek boleh lelar.
Dalam bahasa Python, terdapat pelbagai cara untuk menyemak sama ada objek boleh dilelang. Mari kita lihat satu persatu.
Dalam Python, kami mempunyai dua teknik gelung, satu menggunakan gelung "untuk" dan satu lagi menggunakan gelung "semasa". Menggunakan salah satu daripada dua gelung ini, kita boleh menyemak sama ada objek yang diberikan boleh lelaran.
Dalam contoh ini, kami akan cuba mengulang objek menggunakan gelung "untuk" dan menyemak sama ada ia diulang atau tidak. Di bawah ialah kod.
l = ["apple",22,"orange",34,"abc",0.3] try: for i in l: print(i) print("Given object is iterable") except TypeError: print("Given object is not iterable")
apple 22 orange 34 abc 0.3 Given object is iterable
Mari lihat contoh lain menggunakan gelung for untuk menyemak sama ada objek yang diberikan boleh dilelas.
integer = 23454 try: for i in integer: print(i) print("Given object is iterable") except TypeError: print("Given object is not iterable")
Di bawah ialah output kod yang menyemak sama ada objek yang diberikan boleh lelaran.
Given object is not iterable
Terdapat fungsi yang dipanggil iter() dalam Python yang menyemak sama ada objek yang diberikan boleh diubah atau tidak.
Dalam contoh ini, kami menghantar objek yang akan diulang dan kelas iter kepada fungsi hasattr(). Kemudian, gunakan kaedah iter() untuk menyemak sama ada objek itu diulang.
integer = 23454 if hasattr(integer, '__iter__'): my_iter = iter(integer) print("Given object is iterable") else: print("Given object is not iterable")
Given object is not iterable
Dalam Python, modul collections.abc menyediakan kelas abstrak yang dipanggil Iterable yang boleh digunakan untuk menyemak sama ada objek boleh diulang.
Di sini, apabila kita ingin menyemak sama ada objek yang diberikan boleh diubah atau tidak, kita perlu lulus objek dan kelas abstrak "Iterable" sebagai parameter kepada fungsi isinstance().
from collections.abc import Iterable integer = 23454 if isinstance(integer, Iterable): print("Given object is iterable") else: print("Given object is not iterable")
Berikut ialah output yang dijana -
Given object is not iterable
Mari lihat contoh lain untuk menyemak sama ada objek yang diberikan boleh dilelas.
from collections.abc import Iterable dic = {"name":["Java","Python","C","COBAL"],"Strength":[10,200,40,50,3]} if isinstance(dic, Iterable): print("Given object is iterable") else: print("Given object is not iterable")
Output program di atas ditunjukkan sebagai -
Given object is iterable
Terdapat "cuba" dan "kecuali" dalam Python, yang mengendalikan ralat apabila ia berlaku. Ini juga menyemak sama ada objek yang diberikan boleh diubah.
Ini adalah contoh menggunakan fungsi iter() bersama-sama dengan try dan kecuali untuk menyemak sama ada objek yang diberikan boleh dilelas.
dic = {"name":["Java","Python","C","COBAL"],"Strength":[10,200,40,50,3]} try: iter(dic) print('Given object is iterable') except TypeError: print('Given object is not iterable')
Given object is iterable
Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada objek boleh diubah dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!