any dan all
Termasuk bagian Logika dan Alur dalam perjalanan GDScript di Coddy. Pelajaran 63 dari 78.
any() dan all() mengajukan pertanyaan ya atau tidak tentang seluruh array. Keduanya menerima fungsi yang mengembalikan true atau false untuk satu elemen:
any()mengembalikantruejika fungsi mengembalikantrueuntuk setidaknya satu elemen.all()mengembalikantruejika fungsi mengembalikantrueuntuk setiap elemen.
var enemy_hp = [30, 0, 12]
print(enemy_hp.any(func(hp): return hp == 0))
print(enemy_hp.all(func(hp): return hp > 0))true
falseSatu musuh memiliki 0 HP, jadi any() bernilai true, dan musuh yang sama membuat all() bernilai false.
Keduanya berhenti begitu jawabannya diketahui: any() saat menemukan true pertama, all() saat menemukan false pertama. Keduanya juga bisa digunakan dengan fungsi bernama, seperti numbers.all(is_even).
Pada array kosong, any() menghasilkan false, karena tidak ada elemen yang lolos, dan all() menghasilkan true, karena tidak ada elemen yang gagal.
Gunakan ini dalam kondisi sebagai pengganti perulangan dengan variabel penanda:
var inventory = ["sword", "key", "rope"]
if inventory.any(func(item): return item == "key"):
print("The door opens")Tantangan
MudahProgram membaca satu baris nilai yang dipisahkan koma dan menyimpannya dalam array numbers. Bagian ini sudah ditulis.
Cetak dua baris:
Any perfect:diikutitruejika setidaknya satu nilai adalah100, jika tidak,falseAll passed:diikutitruejika setiap nilai adalah50atau lebih, jika tidak,false
Gunakan any() untuk baris pertama dan all() untuk baris kedua. Untuk input 100,75,40, outputnya adalah:
Any perfect: true
All passed: falseCoba sendiri
extends Node
func _ready():
var numbers := []
for part in OS.read_string_from_stdin().split(","):
numbers.append(int(part))
# Cetak dua baris menggunakan any() dan all()
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1Mendalami String
Method untuk StringMencari dalam StringMengganti dan Menghapus SpasiMemisahkan dan MenggabungkanUlasan: Memeriksa Nama Pengguna4Dictionary Bagian 2
Dictionary BersarangArray berisi DictionaryMenggabungkan DictionaryMenyalin DictionaryRangkuman: Penghitung Frekuensi10Fungsi Lanjutan
Mengembalikan Beberapa NilaiFungsi Lambda Bagian 1Fungsi Lambda Bagian 2Ringkasan: Mengurutkan dengan LambdaFungsi Rekursif Bagian 1Fungsi Rekursif Bagian 2Ringkasan: Menjumlahkan array Bersarang13Sistem Manajemen Inventaris
Ikhtisar ProyekTambahkan Barang2Pengambilan Keputusan Lanjutan
Pencocokan dengan VariabelGuard pada MatchPola arrayPola dictionaryPemeriksaan KeanggotaanUlasan: Parser Perintah5Aplikasi Buku Kontak
Tampilkan MenuTambah Kontak8Pengelola Data Siswa
Gambaran Umum ProyekTambah Siswa11Fungsi Tingkat Tinggi
Method mapMethod filterMethod reduceany dan allUlasan: Validator EmailUlasan: Pemroses Angka3Array Multidimensi
Dasar-Dasar Array 2DMengakses Elemen Array 2DNested Loop dengan Array 2DRangkuman: Array 2DArray Tidak BeraturanPola Umum Array 2DRangkuman: Papan Permainan6Set dengan Dictionary
Apa Itu Set?Dictionary sebagai SetMenambahkan dan MenghapusUnion dan IntersectionSelisih SetRangkuman: Menghapus DuplikatLatihan sendiri: Compiler GDScript online