Dalam Python, set ialah jenis data set, mewakili set tidak tertib dan tidak berulang. Kaedah set() boleh digunakan untuk mencipta koleksi kosong atau menukar objek boleh lelar lain kepada koleksi. Tidak seperti jenis data Python yang lain, set tidak mempunyai indeks dan elemennya tidak boleh diakses oleh indeks, tetapi terdapat kaedah yang boleh digunakan untuk memanipulasi dan mengakses elemen dalam set. Cipta koleksi kosong menggunakan kaedah set()
1
# add()语法如下: set.add(elmnt) # 案例如下: set1 = {1,2,3} set1.add(4) print(set1) # 输出结果如下 {1, 2, 3, 4}
2.clear(): Alih keluar semua elemen daripada koleksi set
# clear()语法如下: set.clear() # 案例如下: set1 = {1, 2, 3} set1.clear() print(set1) # 输出结果如下: set()
3.copy(): Digunakan untuk menyalin set , gunakan kaedah copy() mencipta salinan lengkap koleksi asal, dan operasi pada koleksi yang disalin tidak akan menjejaskan koleksi asal.
# 语法如下: new_set = old_set.copy() # 案列如下: set1 = {1, 2, 3} set2 = set1.copy() set2.add(4) print(set1) print(set2) # 输出结果如下: {1, 2, 3} {1, 2, 3, 4} # 首先,我们创建了一个原始集合,然后使用copy方法创建了一个新集合,并在新集合中添加了一个元素4, # 最后,我们打印了原始集合和复制出的新集合,可以看到两个集合互不影响。
4.difference(): Kaedah ini digunakan untuk mengembalikan set perbezaan set, iaitu elemen set yang dikembalikan dimasukkan dalam set pertama, tetapi tidak dalam set kedua (parameter kaedah).
# 语法如下: set1.difference(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} print(set1.difference(set2)) # 输出结果如下: {1}
5.difference_update(): kaedah digunakan untuk mengalih keluar elemen yang wujud dalam kedua-dua set
difference_update() kaedah dan kaedah perbezaan() Perbezaannya ialah kaedah difference() mengembalikan koleksi baharu dengan elemen yang sama dialih keluar, manakala kaedah difference_update() secara langsung mengalih keluar elemen daripada koleksi asal tanpa mengembalikan nilai.
# 语法如下: set1.difference_update(set2) # 案例如下: set1 = {1, 2, 3, 4, 5} set2 = {2, 3, 4} set1.difference_update(set2) print(set1) # 输出结果如下 {1, 5}
Sintaks kaedah 6.discard(): Kaedah discard() digunakan untuk mengalih keluar elemen koleksi yang ditentukan.
Kaedah ini berbeza daripada kaedah remove() kerana kaedah remove() akan menjana ralat apabila mengalih keluar elemen yang tidak wujud, manakala kaedah discard() tidak.
# 语法如下: set.discard(value) # 案例如下 set1 = {1, 2, 3} set2 = {2, 3, 4} set1.discard(2), set2.discard(3) print(set1, set2) # 输出结果如下: {1, 3} {2, 4} # 删除不存在元素,不会引发任何异常 set1.discard(4) print(set1) # 输出结果如下 {1, 2, 3}
7 Kaedah persilangan() digunakan untuk mengembalikan elemen yang terkandung dalam dua atau lebih set, iaitu persilangan.
# 语法如下: set1.intersection(set2, set3, ...) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set3 = set1.intersection(set2) print(set3) # 输出结果如下: {2, 3}
8. Kaedah intersection_update() digunakan untuk mendapatkan elemen bertindih dalam dua set atau lebih, iaitu untuk mengira persilangan.
Kaedah intersection_update() berbeza daripada kaedah intersection() kerana kaedah intersection() mengembalikan set baharu, manakala kaedah intersection_update() mengalih keluar elemen tidak bertindih pada set asal.
# 语法如下: set1.intersection_update(set2, set3, ...) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set1.intersection_update(set2) print(set1) # 输出结果如下: {2, 3}
kaedah 9.isdisjoint() digunakan untuk menentukan sama ada dua set mengandungi elemen yang sama Jika tidak, ia mengembalikan Benar, jika tidak ia mengembalikan Salah.
# 语法如下: set1.isdisjoint(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set3 = {4, 5, 6} print(set1.isdisjoint(set2)) print(set3.isdisjoint(set1)) # 输出如果如下: False True
kaedah 10.issubset() digunakan untuk menentukan sama ada set ialah subset bagi set lain. Jika semua elemen satu set terkandung dalam set lain, kembalikan Benar jika ya, sebaliknya kembalikan Salah
# 语法如下: set1.issubset(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set3 = {1, 2, 3, 4} print(set1.issubset(set2)) print(set1.issubset(set3)) # 输出结果如下: False True
kaedah 11.issuperset() digunakan untuk menentukan sama ada satu set ialah set lain A superset bagi satu set. Jika set mengandungi semua elemen set lain, set ialah superset set lain dan kaedah issuperset() mengembalikan True, sebaliknya, ia mengembalikan False.
# 语法如下: set1.issuperset(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set3 = {1, 2, 3, 4} print(set1.issuperset(set2)) print(set3.issuperset(set1)) # 输出结果如下: False True
12 Kaedah pop() digunakan untuk mengalih keluar elemen secara rawak dan mengembalikan nilai elemen.
# 语法如下: set.pop() # 案例如下: # 随机移除一个元素: set1 = {1, 2, 3, 4} set1.pop() print(set1) # 结果如下: {2, 3, 4} # 输出返回值: set1 = {1, 2, 3, 4} print(set1.pop()) # 结果如下: 1
kaedah 13.remove() digunakan untuk mengalih keluar elemen tertentu daripada koleksi.
Kaedah ini berbeza daripada kaedah buang() kerana kaedah buang() akan menjana ralat apabila mengalih keluar elemen yang tidak wujud, manakala kaedah buang() tidak.
# 语法如下: set.remove(item) # 案例如下: set1 = {1, 2, 3, 4} set1.remove(4) print(set1) # 输出结果如下: {1, 2, 3}
14 Kaedah symmetric_difference() mengembalikan set elemen bukan pendua dalam dua set, iaitu, ia akan mengeluarkan elemen yang wujud dalam kedua-dua set, iaitu, ia akan kembali unsur-unsur yang berbeza antara satu sama lain dalam dua set.
# 语法如下: set1.symmetric_difference(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} print(set1.symmetric_difference(set2)) # 输出结果如下: {1, 4}
15 Kaedah symmetric_difference_update() mengalih keluar elemen yang sama daripada koleksi semasa dalam koleksi tertentu yang lain dan memasukkan elemen lain dalam koleksi tertentu yang lain ke dalam koleksi semasa.
# 语法如下: set1.symmetric_difference_update(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4, 5} set1.symmetric_difference_update(set2) print(set1) # 输出结果如下: {1, 4, 5}
16 Kaedah kesatuan() mengembalikan penyatuan dua set, yang mengandungi elemen bagi semua set hanya akan muncul sekali.
# 语法如下: set1.union(set2) # 案例如下: # 合并两个集合,重复元素只会出现一次: set1 = {1, 2, 3} set2 = {2, 3, 4} print(set1.union(set2)) # 输出结果如下: {1, 2, 3, 4} # 合并多个集合: set1 = {1, 2, 3} set2 = {2, 3, 4} set3 = {3, 4, 5, 6, 7} print(set1.union(set2, set3)) # 输出结果如下: {1, 2, 3, 4, 5, 6, 7}
17.update(): kaedah digunakan untuk mengubah suai koleksi semasa Anda boleh menambah elemen atau koleksi baharu pada koleksi semasa Jika elemen tambahan itu sudah wujud. maka Elemen akan muncul sekali sahaja, dan pendua akan diabaikan.
# 语法如下: set1.update(set2) # 案例如下: set1 = {1, 2, 3} set2 = {2, 3, 4} set1.update(set2) print(set1) # 结果如下: {1, 2, 3, 4}
Sangat mudah untuk mencipta koleksi kosong menggunakan kaedah set(). Hanya panggil kaedah set() untuk mencipta objek set kosong.
# 例子: set_data = set() print(set_data) # 输出结果如下: set()
Kaedah set() juga boleh menukar objek boleh lelar lain (seperti senarai, tupel dan rentetan) kepada set.
# 案例: list1 = [1, 2, 3, 4, 5] set1 = set(list1) print(set1) tuple1 = (1, 2, 3, 4, 5) set2 = set(tuple1) print(set2) str1 = "Hello, world!" set3 = set(str1) print(set3) # 输出结果如下: {1, 2, 3, 4, 5} {1, 2, 3, 4, 5} {'d', 'H', 'o', ',', 'l', 'e', '!', 'r', 'w', ' '}
Pisah rentetan kepada aksara individu dan simpannya dalam satu set.
# 例子: str2 = "Python" set4 = set(str2) print(set4) # 输出结果: {'h', 't', 'o', 'n', 'P', 'y'}
Objek koleksi mempunyai banyak kaedah terbina dalam untuk menambah, memadam, menggabungkan, membandingkan dan memanipulasi elemen dalam koleksi. Berikut ialah beberapa kaedah biasa objek set:
add(): digunakan untuk menambah satu elemen pada set.
clear(): digunakan untuk mengosongkan semua elemen dalam koleksi.
copy(): digunakan untuk membuat salinan koleksi.
perbezaan(): digunakan untuk mengembalikan perbezaan antara dua set.
difference_update(): Digunakan untuk memadam elemen dalam set yang sama dengan set lain.
buang(): digunakan untuk memadamkan elemen yang ditentukan dalam koleksi.
intersection(): digunakan untuk mengembalikan persilangan dua set.
intersection_update(): Digunakan untuk mengekalkan elemen yang sama dalam koleksi dengan koleksi lain.
isdisjoint(): Digunakan untuk menentukan sama ada dua set tidak mempunyai unsur sepunya.
issubset(): Digunakan untuk menentukan sama ada sesuatu set ialah subset bagi set lain.
issuperset(): Digunakan untuk menentukan sama ada set ialah superset set lain.
pop(): Digunakan untuk mengalih keluar unsur secara rawak.
remove(): digunakan untuk mengalih keluar elemen yang ditentukan daripada koleksi.
symmetric_difference(): digunakan untuk mengembalikan perbezaan simetri dua set.
symmetric_difference_update(): digunakan untuk mengekalkan elemen bukan lazim dalam set dan memadamkan elemen biasa.
union(): digunakan untuk mengembalikan kesatuan dua set.
kemas kini(): Digunakan untuk menambah elemen daripada satu koleksi ke koleksi lain.
Kaedah ini semuanya boleh digunakan dengan memanggil nama kaedah pada objek koleksi dan menyediakan parameter yang diperlukan. Contohnya, gunakan kaedah add() untuk menambah satu elemen pada koleksi dan gunakan kaedah kemas kini() untuk menambah elemen daripada satu koleksi ke koleksi yang lain.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan kaedah yang ditetapkan dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!