Các phương thức có trong tất cả tệp Bazel, bao gồm cả tệp .bzl, BUILD, MODULE.bazel, VENDOR.bazel và WORKSPACE.
Hội viên
- abs
- tất cả
- bất kỳ
- bool
- dict
- dir
- enumerate
- không đạt
- float
- getattr
- hasattr
- hàm băm
- int
- len
- list
- max
- phút
- dải ô
- repr
- đã huỷ
- set
- đã sắp xếp
- str
- tuple
- type
- zip
abs
unknown abs(x)Trả về giá trị tuyệt đối của một số (một số không âm có cùng độ lớn).
abs(-2.3) == 2.3
Tham số
Thông số | Mô tả |
---|---|
x
|
int; hoặc float;
bắt buộc Một số (int hoặc float) |
tất cả
bool all(elements)Trả về true nếu tất cả phần tử đều đánh giá là True hoặc nếu tập hợp này trống. Các phần tử được chuyển đổi thành boolean bằng hàm bool.
all(["hello", 3, True]) == True all([-1, 0, 1]) == False
Tham số
Thông số | Mô tả |
---|---|
elements
|
bắt buộc Một chuỗi hoặc tập hợp các phần tử. |
bất kỳ
bool any(elements)Trả về true nếu ít nhất một phần tử đánh giá là True. Các phần tử được chuyển đổi thành boolean bằng hàm bool.
any([-1, 0, 1]) == True any([False, 0, ""]) == False
Tham số
Thông số | Mô tả |
---|---|
elements
|
bắt buộc Một chuỗi hoặc tập hợp các phần tử. |
bool
bool bool(x=False)Hàm khởi tạo cho loại bool. Phương thức này trả về
False
nếu đối tượng là None
, False
, một chuỗi trống (""
), số 0
hoặc một tập hợp trống (ví dụ: ()
, []
). Nếu không, phương thức này sẽ trả về True
.
Tham số
Thông số | Mô tả |
---|---|
x
|
mặc định là False Biến cần chuyển đổi. |
dict
dict dict(pairs=[], **kwargs)Tạo một từ điển từ một đối số vị trí không bắt buộc và một tập hợp các đối số từ khoá không bắt buộc. Trong trường hợp cùng một khoá được cung cấp nhiều lần, giá trị cuối cùng sẽ được sử dụng. Các mục nhập được cung cấp thông qua đối số từ khoá được xem là đến sau các mục nhập được cung cấp thông qua đối số vị trí.
Tham số
Thông số | Mô tả |
---|---|
pairs
|
mặc định là [] Một dict hoặc một đối tượng có thể lặp lại, trong đó mỗi phần tử có độ dài 2 (khoá, giá trị). |
kwargs
|
bắt buộc Từ điển của các mục bổ sung. |
dir
list dir(x)Trả về một danh sách các chuỗi: tên của các thuộc tính và phương thức của đối tượng tham số.
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Đối tượng cần kiểm tra. |
liệt kê
list enumerate(list, start=0)Trả về danh sách các cặp (bộ dữ liệu gồm hai phần tử), với chỉ mục (int) và mục từ trình tự đầu vào.
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
Tham số
Thông số | Mô tả |
---|---|
list
|
trình tự đầu vào bắt buộc. |
start
|
int;
mặc định là 0 chỉ mục bắt đầu. |
không thành công
None
fail(msg=None, attr=None, sep=" ", *args)
Khiến quá trình thực thi không thành công do lỗi.
Tham số
Thông số | Mô tả |
---|---|
msg
|
mặc định là None Không dùng nữa: hãy sử dụng đối số vị trí. Đối số này hoạt động như một đối số vị trí đầu tiên ngầm ẩn. |
attr
|
chuỗi; hoặc None ;
mặc định là None Không dùng nữa. Thêm một tiền tố không bắt buộc chứa chuỗi này vào thông báo lỗi. |
sep
|
string; giá trị mặc định là " " Chuỗi phân cách giữa các đối tượng, mặc định là dấu cách (" "). |
args
|
bắt buộc Danh sách các giá trị, được định dạng bằng debugPrint (tương đương với str theo mặc định) và được nối với sep (mặc định là " "), xuất hiện trong thông báo lỗi. |
số thực dấu phẩy động
float float(x=unbound)Trả về x dưới dạng giá trị float.
- Nếu
x
đã là một float,float
sẽ trả về giá trị đó mà không thay đổi. - Nếu
x
là một bool,float
sẽ trả về 1.0 cho True và 0.0 cho False. - Nếu
x
là một int,float
sẽ trả về giá trị dấu phẩy động hữu hạn gần nhất với x hoặc một lỗi nếu độ lớn quá lớn. - Nếu
x
là một chuỗi, thì chuỗi đó phải là một giá trị cố định kiểu dấu phẩy động hợp lệ hoặc bằng (bỏ qua chữ hoa chữ thường) vớiNaN
,Inf
hoặcInfinity
, có thể có dấu+
hoặc-
đứng trước.
float()
sẽ trả về 0.0.
Tham số
Thông số | Mô tả |
---|---|
x
|
mặc định là unbound Giá trị cần chuyển đổi. |
getattr
unknown getattr(x, name, default=unbound)Trả về trường của cấu trúc có tên đã cho nếu có. Nếu không, hàm này sẽ trả về
default
(nếu được chỉ định) hoặc báo lỗi. getattr(x, "foobar")
tương đương với x.foobar
.getattr(ctx.attr, "myattr") getattr(ctx.attr, "myattr", "mydefault")
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Cấu trúc có thuộc tính được truy cập. |
name
|
string;
bắt buộc Tên của thuộc tính cấu trúc. |
default
|
mặc định là unbound Giá trị mặc định được trả về trong trường hợp cấu trúc không có thuộc tính của tên đã cho. |
hasattr
bool hasattr(x, name)Trả về True nếu đối tượng
x
có thuộc tính hoặc phương thức của name
đã cho, nếu không thì trả về False. Ví dụ:hasattr(ctx.attr, "myattr")
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Đối tượng cần kiểm tra. |
name
|
string;
bắt buộc Tên của thuộc tính. |
hàm băm
int hash(value)Trả về giá trị băm cho một chuỗi. Giá trị này được tính toán một cách xác định bằng cách sử dụng cùng một thuật toán như
String.hashCode()
của Java, cụ thể là: s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]Hiện không hỗ trợ việc băm các giá trị ngoài chuỗi.
Tham số
Thông số | Mô tả |
---|---|
value
|
string;
bắt buộc Giá trị chuỗi để băm. |
int
int int(x, base=unbound)Trả về x dưới dạng giá trị int.
- Nếu
x
đã là một int,int
sẽ trả về giá trị đó mà không thay đổi. - Nếu
x
là một bool,int
sẽ trả về 1 cho True và 0 cho False. - Nếu
x
là một chuỗi, thì chuỗi đó phải có định dạng<sign><prefix><digits>
.<sign>
là"+"
,"-"
hoặc trống (được diễn giải là dương).<digits>
là một chuỗi chữ số từ 0 đếnbase
– 1, trong đó các chữ cái a-z (hoặc tương đương là A-Z) được dùng làm chữ số cho 10-35. Trong trường hợpbase
là 2/8/16,<prefix>
là không bắt buộc và có thể là 0b/0o/0x (hoặc tương đương là 0B/0O/0X) tương ứng; nếubase
là bất kỳ giá trị nào khác ngoài các cơ sở này hoặc giá trị đặc biệt 0, thì tiền tố phải trống. Trong trường hợpbase
là 0, chuỗi được diễn giải là một số nguyên cố định, theo nghĩa là một trong các cơ sở 2/8/10/16 được chọn tuỳ thuộc vào tiền tố nào (nếu có) được sử dụng. Nếubase
là 0, không có tiền tố nào được sử dụng và có nhiều chữ số, thì chữ số đầu tiên không được là 0; điều này là để tránh nhầm lẫn giữa số bát phân và số thập phân. Độ lớn của số được biểu thị bằng chuỗi phải nằm trong phạm vi cho phép của kiểu int. - Nếu
x
là một số thực,int
sẽ trả về giá trị số nguyên của số thực đó, làm tròn về 0. Đây là lỗi nếu x không phải là số hữu hạn (NaN hoặc vô cực).
x
là loại khác hoặc nếu giá trị là một chuỗi không đáp ứng định dạng ở trên. Không giống như hàm int
của Python, hàm này không cho phép đối số rỗng và không cho phép khoảng trắng thừa cho đối số chuỗi.Ví dụ:
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
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Chuỗi cần chuyển đổi. |
base
|
mặc định là unbound Cơ sở dùng để diễn giải giá trị chuỗi; mặc định là 10. Phải nằm trong khoảng từ 2 đến 36 (bao gồm cả 2 và 36) hoặc 0 để phát hiện cơ số như thể x là một số nguyên cố định. Bạn không được cung cấp thông số này nếu giá trị không phải là một chuỗi.
|
len
int len(x)Trả về độ dài của một chuỗi, trình tự (chẳng hạn như danh sách hoặc bộ dữ liệu), tập hợp, tập hợp set hoặc các đối tượng có thể lặp lại khác.
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Giá trị có độ dài cần báo cáo. |
danh sách
list list(x=[])Trả về một danh sách mới có các phần tử giống với giá trị có thể lặp lại đã cho.
list([1, 2]) == [1, 2] list((2, 3, 2)) == [2, 3, 2] list({5: "a", 2: "b", 4: "c"}) == [5, 2, 4]
Tham số
Thông số | Mô tả |
---|---|
x
|
iterable;
mặc định là [] Đối tượng cần chuyển đổi. |
tối đa
unknown max(key=None, *args)Trả về đối số lớn nhất trong số tất cả đối số đã cho. Nếu chỉ cung cấp một đối số vị trí, thì đối số đó phải là một đối số có thể lặp lại không trống.Đây là lỗi nếu các phần tử không thể so sánh được (ví dụ: int với chuỗi) hoặc nếu không có đối số nào được cung cấp.
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
Tham số
Thông số | Mô tả |
---|---|
key
|
callable; hoặc None ;
mặc định là None Một hàm không bắt buộc được áp dụng cho mỗi phần tử trước khi so sánh. |
args
|
bắt buộc Các phần tử cần kiểm tra. |
phút
unknown min(key=None, *args)Trả về đối số nhỏ nhất trong số tất cả đối số đã cho. Nếu chỉ cung cấp một đối số vị trí, thì đối số đó phải là một đối tượng có thể lặp lại không trống. Lỗi sẽ xảy ra nếu các phần tử không thể so sánh được (ví dụ: int với chuỗi) hoặc nếu không có đối số nào được cung cấp.
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
Tham số
Thông số | Mô tả |
---|---|
key
|
callable; hoặc None ;
mặc định là None Một hàm không bắt buộc được áp dụng cho mỗi phần tử trước khi so sánh. |
args
|
bắt buộc Các phần tử cần kiểm tra. |
in
None
print(sep=" ", *args)
In args
dưới dạng kết quả gỡ lỗi. Chuỗi này sẽ có tiền tố là chuỗi "DEBUG"
và vị trí (tệp và số dòng) của lệnh gọi này. Cách chính xác để chuyển đổi các đối số thành chuỗi không được chỉ định và có thể thay đổi bất cứ lúc nào. Cụ thể, định dạng này có thể khác với (và chi tiết hơn) định dạng do str()
và repr()
thực hiện.Bạn không nên sử dụng print
trong mã phát hành công khai do mã này tạo ra nội dung rác cho người dùng. Đối với các tính năng không dùng nữa, hãy ưu tiên lỗi nghiêm trọng bằng cách sử dụng fail()
bất cứ khi nào có thể.
Tham số
Thông số | Mô tả |
---|---|
sep
|
string; giá trị mặc định là " " Chuỗi phân cách giữa các đối tượng, mặc định là dấu cách (" "). |
args
|
bắt buộc Các đối tượng cần in. |
phạm vi
sequence range(start_or_stop, stop_or_none=None, step=1)Tạo một danh sách trong đó các mục chuyển từ
start
sang stop
, sử dụng giá trị tăng step
. Nếu bạn chỉ cung cấp một đối số, các mục sẽ nằm trong khoảng từ 0 đến phần tử đó.range(4) == [0, 1, 2, 3] range(3, 9, 2) == [3, 5, 7] range(3, 0, -1) == [3, 2, 1]
Tham số
Thông số | Mô tả |
---|---|
start_or_stop
|
int;
bắt buộc Giá trị của phần tử bắt đầu nếu bạn cung cấp giá trị dừng, nếu không giá trị của phần tử dừng và giá trị bắt đầu thực tế là 0 |
stop_or_none
|
int; hoặc None ; giá trị mặc định là None chỉ mục không bắt buộc của mục đầu tiên không được đưa vào danh sách kết quả; quá trình tạo danh sách sẽ dừng trước khi đạt đến stop .
|
step
|
int;
mặc định là 1 Số tăng (mặc định là 1). Có thể là giá trị âm. |
repr
string repr(x)Chuyển đổi bất kỳ đối tượng nào thành một chuỗi đại diện. Điều này rất hữu ích khi gỡ lỗi.
repr("ab") == '"ab"'
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Đối tượng cần chuyển đổi. |
đã đảo ngược
list reversed(sequence)Trả về một danh sách mới, chưa bị đóng băng, chứa các phần tử của trình tự có thể lặp lại ban đầu theo thứ tự đảo ngược.
reversed([3, 5, 4]) == [4, 5, 3]
Tham số
Thông số | Mô tả |
---|---|
sequence
|
iterable;
bắt buộc Trình tự có thể lặp lại (ví dụ: danh sách) cần đảo ngược. |
đặt
set set(elements=[])Thử nghiệm. API này đang trong giai đoạn thử nghiệm và có thể thay đổi bất cứ lúc nào. Vui lòng không phụ thuộc vào tính năng này. Bạn có thể bật tính năng này trên cơ sở thử nghiệm bằng cách đặt
--experimental_enable_starlark_set
.
Tạo một set mới, có thể được khởi tạo để chứa các phần tử từ một iterable nhất định.
Tham số
Thông số | Mô tả |
---|---|
elements
|
mặc định là [] Một tập hợp, trình tự hoặc từ điển. |
đã sắp xếp
list sorted(iterable, key=None, *, reverse=False)Trả về một danh sách mới được sắp xếp chứa tất cả các phần tử của trình tự có thể lặp lại đã cung cấp. Lỗi có thể xảy ra nếu không thể so sánh bất kỳ cặp phần tử x, y nào bằng cách sử dụng x < y. Các phần tử được sắp xếp theo thứ tự tăng dần, trừ phi đối số đảo ngược là True, trong trường hợp này thứ tự sẽ là giảm dần. Sắp xếp ổn định: các phần tử so sánh bằng nhau giữ nguyên thứ tự tương đối ban đầu.
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
Tham số
Thông số | Mô tả |
---|---|
iterable
|
iterable;
bắt buộc Trình tự có thể lặp lại để sắp xếp. |
key
|
callable; hoặc None ;
mặc định là None Một hàm không bắt buộc được áp dụng cho mỗi phần tử trước khi so sánh. |
reverse
|
bool; giá trị mặc định là False Trả về kết quả theo thứ tự giảm dần. |
str
string str(x)Chuyển đổi bất kỳ đối tượng nào thành chuỗi. Điều này rất hữu ích khi gỡ lỗi.
str("ab") == "ab" str(8) == "8"
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Đối tượng cần chuyển đổi. |
bộ dữ liệu
tuple tuple(x=())Trả về một bộ dữ liệu có các phần tử giống với giá trị có thể lặp lại đã cho.
tuple([1, 2]) == (1, 2) tuple((2, 3, 2)) == (2, 3, 2) tuple({5: "a", 2: "b", 4: "c"}) == (5, 2, 4)
Tham số
Thông số | Mô tả |
---|---|
x
|
iterable;
mặc định là () Đối tượng cần chuyển đổi. |
loại
string type(x)Trả về tên loại của đối số. Điều này rất hữu ích khi gỡ lỗi và kiểm tra kiểu. Ví dụ:
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"Hàm này có thể thay đổi trong tương lai. Để viết mã tương thích với Python và có thể sử dụng trong tương lai, hãy chỉ sử dụng mã này để so sánh các giá trị trả về:
if type(x) == type([]): # if x is a list
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc Đối tượng cần kiểm tra loại. |
zip
list zip(*args)Trả về một
list
của tuple
, trong đó cặp thứ i chứa phần tử thứ i từ mỗi trình tự đối số hoặc đối tượng có thể lặp lại. Danh sách có kích thước bằng dữ liệu đầu vào ngắn nhất. Với một đối số có thể lặp lại, hàm này sẽ trả về một danh sách gồm 1-tuple. Nếu không có đối số, hàm này sẽ trả về một danh sách trống. Ví dụ: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)]
Tham số
Thông số | Mô tả |
---|---|
args
|
danh sách bắt buộc để nén. |