Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk menyemak sama ada objek boleh diubah dalam Python?

Bagaimana untuk menyemak sama ada objek boleh diubah dalam Python?

王林
Lepaskan: 2023-08-25 22:05:05
ke hadapan
1695 orang telah melayarinya

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.

Gunakan gelung

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.

Contoh

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")
Salin selepas log masuk

Output

apple
22
orange
34
abc
0.3
Given object is iterable
Salin selepas log masuk

Contoh

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")
Salin selepas log masuk

Output

Di bawah ialah output kod yang menyemak sama ada objek yang diberikan boleh lelaran.

Given object is not iterable
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Gunakan kaedah iter()

Terdapat fungsi yang dipanggil iter() dalam Python yang menyemak sama ada objek yang diberikan boleh diubah atau tidak.

Contoh

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")
Salin selepas log masuk

Output

Given object is not iterable
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Menggunakan modul collections.abc

Dalam Python, modul collections.abc menyediakan kelas abstrak yang dipanggil Iterable yang boleh digunakan untuk menyemak sama ada objek boleh diulang.

Contoh

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")
Salin selepas log masuk

Output

Berikut ialah output yang dijana -

Given object is not iterable
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Contoh

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")

Salin selepas log masuk

Output

Output program di atas ditunjukkan sebagai -

Given object is iterable
Salin selepas log masuk
Salin selepas log masuk

Gunakan cuba dan kecuali

Terdapat "cuba" dan "kecuali" dalam Python, yang mengendalikan ralat apabila ia berlaku. Ini juga menyemak sama ada objek yang diberikan boleh diubah.

Contoh

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')

Salin selepas log masuk

Output

Given object is iterable
Salin selepas log masuk
Salin selepas log masuk

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!

Label berkaitan:
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