Rumah > pembangunan bahagian belakang > Tutorial Python > Program Python untuk menguji sama ada sebarang elemen set hadir dalam senarai

Program Python untuk menguji sama ada sebarang elemen set hadir dalam senarai

WBOY
Lepaskan: 2023-09-04 21:49:04
ke hadapan
1210 orang telah melayarinya

Program Python untuk menguji sama ada sebarang elemen set hadir dalam senarai

Dalam artikel ini, kita akan belajar bagaimana untuk menyemak sama ada sebarang elemen set wujud dalam senarai dalam python.

Kaedah penggunaan

  • Gunakan mana-mana () fungsi

  • Gunakan bitwise & operator

  • Gunakan fungsi Counter(), penapis() dan lambda

Contoh

Andaikan kita telah mengambil set input dan senarai input. Kami kini akan menyemak sama ada sebarang elemen set input wujud dalam senarai input menggunakan kaedah di atas.

Masuk

inputSet = {4, 8, 1, 3, 5, 7}
inputList = [7, 15, 20]
Salin selepas log masuk

Output

Checking whether any set element present in the input list: True
Salin selepas log masuk

Dalam contoh di atas, 7 wujud dalam kedua-dua set dan senarai, jadi hasilnya adalah Benar

Kaedah 1: Gunakan mana-mana () fungsi

Fungsi any() mengembalikan True jika mana-mana item dalam iterable adalah benar, jika tidak ia mengembalikan Palsu.

Tatabahasa

any(iterable)
Salin selepas log masuk

Algoritma (langkah)

Berikut adalah algoritma/langkah yang perlu diikuti untuk melaksanakan tugas yang diperlukan -.

  • Buat pembolehubah untuk menyimpan set input dan mencetak set yang diberikan.

  • Buat pembolehubah lain untuk menyimpan senarai input.

  • Gunakan fungsi any() untuk menyemak sama ada mana-mana elemen koleksi terdapat dalam senarai input dengan menggelung melalui koleksi input dan menyemak sama ada elemen semasa terdapat dalam senarai input.

  • Cetak hasilnya sebagai nilai boolean.

Contoh

Atur cara berikut menggunakan fungsi any() untuk menyemak sama ada sebarang elemen set input wujud dalam senarai input dan mengembalikan True jika ada sebaliknya False –

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [7, 15, 20]

# checking whether any set element is present in the input list using any() function
result = any(i in inputSet for i in inputList)

# printing the output
print("Checking whether any set element present in the input list:", result)
Salin selepas log masuk

Output

Apabila dilaksanakan, program di atas akan menjana output berikut -

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: True
Salin selepas log masuk
Salin selepas log masuk

Kaedah 2: Gunakan bitwise & operator

Bitwise & Operator - "&" ialah operator bitwise yang membandingkan nombor (perduaan). Jika kedua-dua bit ialah 1, maka ia menetapkan setiap bit kepada 1.

Algoritma (langkah)

Berikut adalah algoritma/langkah yang perlu diikuti untuk melaksanakan tugas yang diperlukan -

  • Tukar input yang diberikan kepada set menggunakan fungsi set().

  • Semak sama ada sebarang elemen set wujud dalam senarai input menggunakan operator & (tetapkan setiap bit kepada 1 jika kedua-dua bit adalah 1) dan gunakan fungsi bool() (mengembalikan nilai boolean objek yang diberikan )

  • Cetak hasilnya.

Contoh

Atur cara berikut menggunakan operator bitwise & untuk menyemak sama ada sebarang elemen set input wujud dalam senarai input dan mengembalikan True jika ada sebaliknya False –

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [9, 15, 20]

# Convert the given list to set using the set() function
inputListSet = set(inputList)

# checking whether any set element present in the input list

# using & operator(checks for common element) and converting to boolean
result = bool(inputSet & inputListSet)

# printing the output
print("Checking whether any set element present in the input list:", result)
Salin selepas log masuk

Output

Apabila dilaksanakan, program di atas akan menjana output berikut -

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: False
Salin selepas log masuk

Kaedah 3: Menggunakan fungsi Counter(), penapis() dan lambda

fungsi penapis() - Menapis jujukan tertentu menggunakan fungsi yang menentukan sama ada setiap elemen dalam jujukan itu benar atau palsu.

Fungsi Counter() - Kira subkelas objek boleh cincang. Ia secara tersirat mencipta jadual cincang yang boleh diubah apabila dipanggil/dipanggil.

lambda() fungsi

Fungsi lambda ialah fungsi kecil tanpa nama.

Fungsi lambda boleh mempunyai tanpa had/sebarang bilangan parameter, tetapi hanya boleh mempunyai satu ungkapan.

Tatabahasa

lambda arguments : expression
Salin selepas log masuk

Algoritma (langkah)

Berikut adalah algoritma/langkah yang perlu diikuti untuk melaksanakan tugas yang diperlukan -

  • Gunakan kata kunci import untuk mengimport fungsi Kaunter daripada modul koleksi.

  • Gunakan fungsi Counter() untuk mendapatkan frekuensi semua elemen senarai input dalam bentuk kamus.

  • Gunakan fungsi penapis untuk menapis semua elemen set input jika ia terdapat dalam kamus frekuensi di atas.

  • Panjang senarai yang ditapis akan lebih besar daripada 1 jika terdapat sebarang unsur biasa.

  • Gunakan pernyataan bersyarat untuk menyemak sama ada syarat di atas adalah benar dan cetak sewajarnya.

Contoh

Atur cara berikut menggunakan fungsi Counter(), filter() dan lambda untuk menyemak sama ada sebarang elemen set input wujud dalam senarai input dan mengembalikan True jika ada sebaliknya False –

# importing a Counter function from the collections module
from collections import Counter

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [7, 15, 20, 7]

# getting the frequency of list elements using the Counter() function

# Here it returns frequencies as a dictionary
elements_freq = Counter(inputList)

# Traversing in the input Set using the lambda function

# Checking if the set element exists in the keys of the dictionary

# Filtering all the elements which satisfy the above condition
output = list(filter(lambda k: k in elements_freq.keys(), inputSet))

# Check if there are any filtered elements
if(len(output) > 0):
   output = True

# If no elements are common then the output will be False
else:
   output = False

# printing the output
print("Checking whether any set element present in the input list:", output)
Salin selepas log masuk

Output

Apabila dilaksanakan, program di atas akan menjana output berikut -

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: True
Salin selepas log masuk
Salin selepas log masuk

Kesimpulan

Dalam artikel ini, kami mempelajari cara menggunakan tiga kaedah berbeza untuk menentukan sama ada set mengandungi elemen dalam senarai. Kami juga mempelajari cara menukar mana-mana objek boleh lelar seperti senarai, tuple atau mana-mana objek boleh lelar ke dalam satu set menggunakan fungsi set() dan cara menggunakan operator & untuk mencari elemen sepunya kepada kedua-dua set yang diberikan set tertentu.

Atas ialah kandungan terperinci Program Python untuk menguji sama ada sebarang elemen set hadir dalam senarai. 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