Rumah >pembangunan bahagian belakang >Tutorial Python >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.
Gunakan mana-mana () fungsi
Gunakan bitwise & operator
Gunakan fungsi Counter(), penapis() dan lambda
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.
inputSet = {4, 8, 1, 3, 5, 7} inputList = [7, 15, 20]
Checking whether any set element present in the input list: True
Dalam contoh di atas, 7 wujud dalam kedua-dua set dan senarai, jadi hasilnya adalah Benar
Fungsi any() mengembalikan True jika mana-mana item dalam iterable adalah benar, jika tidak ia mengembalikan Palsu.
any(iterable)
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.
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)
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
Bitwise & Operator - "&" ialah operator bitwise yang membandingkan nombor (perduaan). Jika kedua-dua bit ialah 1, maka ia menetapkan setiap bit kepada 1.
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.
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)
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
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.
Fungsi lambda ialah fungsi kecil tanpa nama.
Fungsi lambda boleh mempunyai tanpa had/sebarang bilangan parameter, tetapi hanya boleh mempunyai satu ungkapan.
lambda arguments : expression
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.
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)
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
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!