Semua file Bazel

Laporkan masalah Nightly · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Metode yang tersedia di semua file Bazel, termasuk file .bzl, BUILD, MODULE.bazel, VENDOR.bazel, dan WORKSPACE.

Anggota

abs

unknown abs(x)

Menampilkan nilai absolut dari sebuah angka (bilangan non-negatif dengan magnitudo yang sama).
abs(-2.3) == 2.3

Parameter

Parameter Deskripsi
x int; atau float; wajib
Angka (int atau float)

semua

bool all(elements)

Menampilkan true jika semua elemen bernilai True atau jika koleksi kosong. Elemen dikonversi ke boolean menggunakan fungsi bool.
all(["hello", 3, True]) == True
all([-1, 0, 1]) == False

Parameter

Parameter Deskripsi
elements required
String atau kumpulan elemen.

apa pun

bool any(elements)

Menampilkan true (benar) jika setidaknya satu elemen bernilai True (Benar). Elemen dikonversi menjadi boolean menggunakan fungsi bool.
any([-1, 0, 1]) == True
any([False, 0, ""]) == False

Parameter

Parameter Deskripsi
elements wajib
String atau kumpulan elemen.

bool

bool bool(x=False)

Konstruktor untuk jenis bool. Metode ini menampilkan False jika objeknya adalah None, False, string kosong (""), angka 0, atau koleksi kosong (misalnya, (), []). Jika tidak, True akan ditampilkan.

Parameter

Parameter Deskripsi
x default adalah False
Variabel yang akan dikonversi.

dict

dict dict(pairs=[], **kwargs)

Membuat kamus dari argumen posisi opsional dan kumpulan argumen kata kunci opsional. Jika kunci yang sama diberikan beberapa kali, nilai terakhir akan digunakan. Entri yang diberikan melalui argumen kata kunci dianggap muncul setelah entri diberikan melalui argumen posisi.

Parameter

Parameter Deskripsi
pairs default adalah []
Dict, atau iterable yang setiap elemennya memiliki panjang 2 (kunci, nilai).
kwargs wajib
Kamus entri tambahan.

dir

list dir(x)

Menampilkan daftar string: nama atribut dan metode dari objek parameter.

Parameter

Parameter Deskripsi
x wajib
Objek yang akan diperiksa.

menghitung

list enumerate(list, start=0)

Menampilkan daftar pasangan (tuple dua elemen), dengan indeks (int) dan item dari urutan input.
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]

Parameter

Parameter Deskripsi
list wajib
urutan input teks.
start int; defaultnya adalah indeks awal 0
.

fail

None fail(msg=None, attr=None, sep=" ", *args)

Menyebabkan eksekusi gagal dengan error.

Parameter

Parameter Deskripsi
msg default adalah None
Tidak digunakan lagi: sebagai gantinya gunakan argumen posisi. Argumen ini berfungsi seperti argumen posisi utama yang implisit.
attr string; atau None; defaultnya adalah None
Tidak digunakan lagi. Menyebabkan awalan opsional yang berisi string ini ditambahkan ke pesan error.
sep string; default adalah " "
String pemisah antar-objek, defaultnya adalah spasi (" ").
args required
Daftar nilai, yang diformat dengan debugPrint (yang setara dengan str secara default) dan digabungkan dengan sep (defaultnya " "), yang muncul dalam pesan error.

float

float float(x=unbound)

Menampilkan x sebagai nilai float.
  • Jika x sudah berupa float, float akan menampilkannya tanpa perubahan.
  • Jika x adalah bool, float akan menampilkan 1,0 untuk Benar dan 0,0 untuk Salah.
  • Jika x adalah int, float akan menampilkan nilai floating point berhingga terdekat ke x, atau error jika magnitudo terlalu besar.
  • Jika x adalah string, string tersebut harus berupa literal floating point yang valid, atau sama (mengabaikan huruf besar/kecil) dengan NaN, Inf, atau Infinity, yang secara opsional didahului dengan tanda + atau -.
Nilai lainnya akan menyebabkan error. Tanpa argumen, float() menampilkan 0.0.

Parameter

Parameter Deskripsi
x default adalah unbound
Nilai yang akan dikonversi.

getattr

unknown getattr(x, name, default=unbound)

Menampilkan kolom struct dari nama yang diberikan jika ada. Jika tidak, tindakan tersebut akan menampilkan default (jika ditentukan) atau menyebabkan error. getattr(x, "foobar") setara dengan x.foobar.
getattr(ctx.attr, "myattr")
getattr(ctx.attr, "myattr", "mydefault")

Parameter

Parameter Deskripsi
x wajib
Struct yang atributnya diakses.
name string; wajib
Nama atribut struct.
default default adalah unbound
Nilai default yang akan ditampilkan jika struct tidak memiliki atribut dengan nama yang diberikan.

hasattr

bool hasattr(x, name)

Menampilkan True jika objek x memiliki atribut atau metode name yang diberikan, jika tidak, menampilkan False. Contoh:
hasattr(ctx.attr, "myattr")

Parameter

Parameter Deskripsi
x wajib
Objek yang akan diperiksa.
name string; required
Nama atribut.

hash

int hash(value)

Menampilkan nilai hash untuk string. Hashing nilai ini dihitung secara deterministik menggunakan algoritma yang sama seperti String.hashCode() Java, yaitu:
s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]
Hashing nilai selain string saat ini tidak didukung.

Parameter

Parameter Deskripsi
value string; wajib
Nilai string yang akan di-hash.

int

int int(x, base=unbound)

Menampilkan x sebagai nilai int.
  • Jika x sudah merupakan int, int akan menampilkannya tanpa perubahan.
  • Jika x adalah boolean, int akan menampilkan 1 untuk Benar dan 0 untuk Salah.
  • Jika x berupa string, maka harus memiliki format <sign><prefix><digits>. <sign> adalah "+", "-", atau kosong (ditafsirkan sebagai positif). <digits> adalah urutan angka dari 0 hingga base - 1, dengan huruf a-z (atau setara, A-Z) digunakan sebagai angka untuk 10-35. Jika base adalah 2/8/16, <prefix> bersifat opsional dan dapat berupa 0b/0o/0x (atau setara dengan 0B/0O/0X); jika base adalah nilai lain selain basis ini atau nilai khusus 0, awalan harus kosong. Jika base adalah 0, string ditafsirkan sebagai literal bilangan bulat, dalam artian bahwa salah satu basis 2/8/10/16 dipilih bergantung pada awalan mana jika ada digunakan. Jika base adalah 0, tidak ada awalan yang digunakan, dan ada lebih dari satu digit, digit pertama tidak boleh 0; ini untuk menghindari kebingungan antara oktal dan desimal. Besarnya angka yang diwakili oleh string harus berada dalam rentang yang diizinkan untuk jenis int.
  • Jika x adalah float, int akan menampilkan nilai bilangan bulat dari float, yang dibulatkan ke nol. Error akan terjadi jika x tidak terbatas (NaN atau tak terhingga).
Fungsi ini gagal jika x adalah jenis lain, atau jika nilainya adalah string yang tidak memenuhi format di atas. Tidak seperti fungsi int Python, fungsi ini tidak mengizinkan argumen nol, dan tidak mengizinkan spasi kosong yang tidak relevan untuk argumen string.

Contoh:

int("123") == 123
int("-123") == -123
int("+123") == 123
int("FF", 16) == 255
int("0xFF", 16) == 255
int("10", 0) == 10
int("-0x10", 0) == -16
int("-0x10", 0) == -16
int("123.456") == 123

Parameter

Parameter Deskripsi
x wajib
String yang akan dikonversi.
base default adalah unbound
Dasar yang digunakan untuk menafsirkan nilai string; defaultnya adalah 10. Harus antara 2 dan 36 (inklusif), atau 0 untuk mendeteksi dasar seolah-olah x adalah literal bilangan bulat. Parameter ini tidak boleh diberikan jika nilainya bukan string.

len

int len(x)

Menampilkan panjang string, urutan (seperti daftar atau tuple), dict, atau iterabel lainnya.

Parameter

Parameter Deskripsi
x wajib
Nilai yang panjangnya akan dilaporkan.

list

list list(x=[])

Menampilkan daftar baru dengan elemen yang sama dengan nilai iterable yang diberikan.
list([1, 2]) == [1, 2]
list((2, 3, 2)) == [2, 3, 2]
list({5: "a", 2: "b", 4: "c"}) == [5, 2, 4]

Parameter

Parameter Deskripsi
x {i>iterable<i}; default adalah []
Objek yang akan dikonversi.

maks

unknown max(key=None, *args)

Menampilkan salah satu terbesar dari semua argumen yang diberikan. Jika hanya ada satu argumen posisi yang diberikan, argumen tersebut harus berupa iterable yang tidak kosong.Error akan terjadi jika elemen tidak sebanding (misalnya, int dengan string), atau jika tidak ada argumen yang diberikan.
max(2, 5, 4) == 5
max([5, 6, 3]) == 6
max("two", "three", "four", key = len) =="three"  # the longest
max([1, -1, -2, 2], key = abs) == -2  # the first encountered with maximal key value

Parameter

Parameter Deskripsi
key callable; atau None; default adalah None
Fungsi opsional yang diterapkan ke setiap elemen sebelum perbandingan.
args required
Elemen yang akan diperiksa.

mnt

unknown min(key=None, *args)

Menampilkan argumen terkecil dari semua argumen yang diberikan. Jika hanya satu argumen posisional yang diberikan, argumen tersebut harus berupa iterable yang tidak kosong. Error akan terjadi jika elemen tidak dapat dibandingkan (misalnya int dengan string), atau jika tidak ada argumen yang diberikan.
min(2, 5, 4) == 2
min([5, 6, 3]) == 3
min("six", "three", "four", key = len) == "six"  # the shortest
min([2, -2, -1, 1], key = abs) == -1  # the first encountered with minimal key value

Parameter

Parameter Deskripsi
key callable; atau None; default adalah None
Fungsi opsional yang diterapkan ke setiap elemen sebelum perbandingan.
args required
Elemen yang akan diperiksa.

cetak

None print(sep=" ", *args)

Mencetak args sebagai output debug. Nama ini akan diawali dengan string "DEBUG" dan lokasi (file dan nomor baris) panggilan ini. Cara persis argumen dikonversi menjadi string tidak ditentukan dan dapat berubah kapan saja. Secara khusus, format ini mungkin berbeda dari (dan lebih mendetail daripada) pemformatan yang dilakukan oleh str() dan repr().

Menggunakan print dalam kode produksi tidak disarankan karena spam yang dibuat untuk pengguna. Untuk penghentian penggunaan, pilih error berat menggunakan fail() jika memungkinkan.

Parameter

Parameter Deskripsi
sep string; default adalah " "
String pemisah antar-objek, defaultnya adalah spasi (" ").
args wajib
Objek yang akan dicetak.

rentang

sequence range(start_or_stop, stop_or_none=None, step=1)

Membuat daftar tempat item berpindah dari start ke stop, menggunakan penambahan step. Jika satu argumen diberikan, item akan berkisar dari 0 hingga elemen tersebut.
range(4) == [0, 1, 2, 3]
range(3, 9, 2) == [3, 5, 7]
range(3, 0, -1) == [3, 2, 1]

Parameter

Parameter Deskripsi
start_or_stop int; wajib
Nilai elemen awal jika perhentian diberikan, jika tidak, nilai perhentian dan awal yang sebenarnya adalah 0
stop_or_none int; atau None; default adalah None
indeks opsional item pertama yang tidak akan disertakan dalam daftar yang dihasilkan; pembuatan daftar berhenti sebelum stop tercapai.
step int; defaultnya adalah 1
Penambahan (defaultnya adalah 1). Nilai ini mungkin negatif.

repr

string repr(x)

Mengonversi objek apa pun menjadi representasi string. Hal ini berguna untuk proses debug.
repr("ab") == '"ab"'

Parameter

Parameter Deskripsi
x wajib
Objek yang akan dikonversi.

dibalik

list reversed(sequence)

Menampilkan daftar baru yang tidak dibekukan yang berisi elemen urutan iterable asli dalam urutan terbalik.
reversed([3, 5, 4]) == [4, 5, 3]

Parameter

Parameter Deskripsi
sequence {i>iterable<i}; wajib
Urutan iterable (misalnya, daftar) yang akan dibalik.

diurutkan

list sorted(iterable, key=None, *, reverse=False)

Menampilkan daftar baru yang diurutkan yang berisi semua elemen urutan iterabel yang disediakan. Error dapat terjadi jika pasangan elemen x, y tidak dapat dibandingkan menggunakan x < y. Elemen diurutkan dalam urutan menaik, kecuali jika argumen terbalik adalah Benar, dalam hal ini urutan akan menurun. Penyortiran stabil: elemen yang membandingkan sama dengan mempertahankan urutan relatif aslinya.
sorted([3, 5, 4]) == [3, 4, 5]
sorted([3, 5, 4], reverse = True) == [5, 4, 3]
sorted(["two", "three", "four"], key = len) == ["two", "four", "three"]  # sort by length

Parameter

Parameter Deskripsi
iterable {i>iterable<i}; wajib
Urutan iterable untuk mengurutkan.
key dapat dipanggil: atau None; default adalah None
Fungsi opsional yang diterapkan pada setiap elemen sebelum perbandingan.
reverse bool; default adalah False
Menampilkan hasil dalam urutan menurun.

str

string str(x)

Mengonversi objek apa pun menjadi string. Hal ini berguna untuk proses debug.
str("ab") == "ab"
str(8) == "8"

Parameter

Parameter Deskripsi
x wajib
Objek yang akan dikonversi.

tuple

tuple tuple(x=())

Menampilkan tuple dengan elemen yang sama seperti nilai iterabel yang diberikan.
tuple([1, 2]) == (1, 2)
tuple((2, 3, 2)) == (2, 3, 2)
tuple({5: "a", 2: "b", 4: "c"}) == (5, 2, 4)

Parameter

Parameter Deskripsi
x {i>iterable<i}; default adalah ()
Objek yang akan dikonversi.

jenis

string type(x)

Menampilkan nama jenis argumennya. Ini berguna untuk proses debug dan pemeriksaan jenis. Contoh:
type(2) == "int"
type([1]) == "list"
type(struct(a = 2)) == "struct"
Fungsi ini dapat berubah di masa mendatang. Untuk menulis kode yang kompatibel dengan Python dan tahan lama, gunakan hanya untuk membandingkan nilai yang ditampilkan:
if type(x) == type([]):  # if x is a list

Parameter

Parameter Deskripsi
x required
Objek yang akan diperiksa jenisnya.

zip

list zip(*args)

Menampilkan list dari tuple, dengan tuple ke-i berisi elemen ke-i dari setiap urutan argumen atau iterable. Daftar memiliki ukuran input terpendek. Dengan satu argumen iterable, fungsi ini menampilkan daftar 1-tuple. Tanpa argumen, kueri akan menampilkan daftar kosong. Contoh:
zip()  # == []
zip([1, 2])  # == [(1,), (2,)]
zip([1, 2], [3, 4])  # == [(1, 3), (2, 4)]
zip([1, 2], [3, 4, 5])  # == [(1, 3), (2, 4)]

Parameter

Parameter Deskripsi
args wajib
ke file ZIP.