所有 Bazel 文件(包括 .bzl 文件、BUILD、MODULE.bazel 和 WORKSPACE)中提供的方法。
成员
- 绝对值
- 全部
- 任意类型
- 布尔值
- 字典
- dir
- 枚举
- 失败
- 浮点数
- getattr
- hasattr
- 哈希
- 整数
- 智能镜头
- 列表
- 最大值
- 分钟
- 打印
- 范围
- 复习
- 已撤回
- 已排序
- str
- 元组
- 类型
- zip
abs
unknown abs(x)
abs(-2.3) == 2.3
参数
参数 | 说明 |
---|---|
x
|
int;或 float;
必需 数字(整数或浮点数) |
全部
bool all(elements)
all(["hello", 3, True]) == True all([-1, 0, 1]) == False
参数
参数 | 说明 |
---|---|
elements
|
必需 一个字符串或一系列元素。 |
任意
bool any(elements)
any([-1, 0, 1]) == True any([False, 0, ""]) == False
参数
参数 | 说明 |
---|---|
elements
|
必需 一个字符串或一系列元素。 |
bool
bool bool(x=False)
None
、False
、空字符串 (""
)、数字 0
或空集合(例如 ()
、[]
),则该方法会返回 False
。否则,它会返回 True
。
参数
参数 | 说明 |
---|---|
x
|
默认值为 False 要转换的变量。 |
字典
dict dict(pairs=[], **kwargs)
参数
参数 | 说明 |
---|---|
pairs
|
默认值为 [] 一个字典或可迭代对象,其元素均长度为 2(键、值)。 |
kwargs
|
必需 其他条目的字典。 |
dir
list dir(x)
参数
参数 | 说明 |
---|---|
x
|
必需 要检查的对象。 |
枚举
list enumerate(list, start=0)
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
参数
参数 | 说明 |
---|---|
list
|
必需 输入序列。 |
start
|
默认值为 0 开始索引。 |
fail
None
fail(msg=None, attr=None, *args)
参数
参数 | 说明 |
---|---|
msg
|
默认值为 None 已弃用:请改用位置参数。此参数充当隐式前置位置参数。 |
attr
|
string;或 None ;
默认值为 None 已弃用。用于将包含此字符串的可选前缀添加到错误消息中。 |
args
|
必需 错误消息中显示的值列表,采用 debugPrint 设置格式(默认等同于 str)并以空格连接。 |
float
float float(x=unbound)
- </ph>
- 如果
x
已经是浮点数,则float
不会原样返回它。 - 如果
x
为布尔值,则float
对 True 返回 1.0,对于 False 返回 0.0。 - 如果
x
是整数,float
会返回与 x 最接近的有限浮点值;如果大小过大,则返回错误。 - 如果
x
是一个字符串,它必须是有效的浮点字面量,或者等于(忽略大小写)NaN
、Inf
或Infinity
,可以选择性地在前面加上+
或-
符号。
float()
会返回 0.0。
参数
参数 | 说明 |
---|---|
x
|
默认值为 unbound 要转换的值。 |
getattr
unknown getattr(x, name, default=unbound)
default
(如果已指定)或引发错误。getattr(x, "foobar")
相当于 x.foobar
。getattr(ctx.attr, "myattr") getattr(ctx.attr, "myattr", "mydefault")
参数
参数 | 说明 |
---|---|
x
|
必需 要访问其属性的结构体。 |
name
|
必需 结构体属性的名称。 |
default
|
默认值为 unbound 结构体没有给定名称的属性时要返回的默认值。 |
hasattr
bool hasattr(x, name)
x
具有给定 name
的属性或方法,则返回 True,否则返回 False。示例:hasattr(ctx.attr, "myattr")
参数
参数 | 说明 |
---|---|
x
|
必需 要检查的对象。 |
name
|
必需 属性的名称。 |
哈希
int hash(value)
String.hashCode()
相同的算法确定性地计算,即:s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]
参数
参数 | 说明 |
---|---|
value
|
必需 要哈希处理的字符串值。 |
int
int int(x, base=unbound)
- 如果
x
已经是整数,int
会原封不动地返回该值。 - 如果
x
为布尔值,int
会针对 True 返回 1,为 False 返回 0。 - 如果
x
是字符串,则必须采用<sign><prefix><digits>
格式。<sign>
是"+"
、"-"
或空(解释为正数)。<digits>
是从 0 到base
- 1 的一连串数字,其中字母 a-z(或等效的 A-Z)用作 10-35 的数字。如果base
为 2/8/16,则<prefix>
是可选的,分别为 0b/0o/0x(或等效的 0B/0O/0X);如果base
是除这些碱基或特殊值 0 之外的任何其他值,则前缀必须为空。如果base
为 0,则字符串会被解释为整数字面量,因为系统会选择以 2/8/10/16 为基数的其中一个,具体取决于使用了哪个前缀。如果base
为 0,则不使用前缀,并且有多个数字,则前导数字不能为 0;这是为了避免八进制和十进制混淆。字符串所表示的数字大小必须在 int 类型的允许的范围内。 - 如果
x
是浮点数,则int
会返回该浮点数的整数值,向零舍入。如果 x 是非有限值(NaN 或无穷大),则报告错误。
x
是任何其他类型,或者值是不符合上述格式的字符串,则此函数会失败。与 Python 的 int
函数不同,此函数不允许零参数,也不允许字符串参数出现多余的空格。示例:
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
参数
参数 | 说明 |
---|---|
x
|
必需 要转换的字符串。 |
base
|
默认值为 unbound 用于解释字符串值的基数;默认为 10。必须介于 2 到 36 之间(含 2 和 36),或为 0 以检测基数,就像 x 是整数字面量一样。如果值不是字符串,则不能提供此参数。
|
len
int len(x)
参数
参数 | 说明 |
---|---|
x
|
必需 要报告其长度的值。 |
list
list list(x=[])
list([1, 2]) == [1, 2] list((2, 3, 2)) == [2, 3, 2] list({5: "a", 2: "b", 4: "c"}) == [5, 2, 4]
参数
参数 | 说明 |
---|---|
x
|
默认值为 [] 要转换的对象。 |
max
unknown max(*args)
max(2, 5, 4) == 5 max([5, 6, 3]) == 6
参数
参数 | 说明 |
---|---|
args
|
必需 要检查的元素。 |
分钟
unknown min(*args)
min(2, 5, 4) == 2 min([5, 6, 3]) == 3
参数
参数 | 说明 |
---|---|
args
|
必需 要检查的元素。 |
输出
None
print(sep=" ", *args)
args
输出为调试输出。其前缀为字符串 "DEBUG"
和此调用的位置(文件和行号)。参数转换为字符串的确切方式未指定,可能随时发生变化。具体来说,它可能与 str()
和 repr()
设置的格式不同(且更为详细)。我们不建议在正式版代码中使用 print
,因为它会给用户造成一些垃圾内容。对于弃用功能,请尽可能使用 fail()
来显示硬错误。
参数
参数 | 说明 |
---|---|
sep
|
默认值为 " " 对象之间的分隔符字符串,默认为空格(“ ”)。 |
args
|
必需 要打印的对象。 |
范围
sequence range(start_or_stop, stop_or_none=None, step=1)
step
递增创建一个列表,其中包含从 start
到 stop
的项。如果只提供一个参数,则各个项的范围为 0 到该元素。range(4) == [0, 1, 2, 3] range(3, 9, 2) == [3, 5, 7] range(3, 0, -1) == [3, 2, 1]
参数
参数 | 说明 |
---|---|
start_or_stop
|
必需 如果提供了 start 元素,则为 start 元素的值,否则为 stop 值且实际 start 为 0 |
stop_or_none
|
int;或 None ;
默认值为 None 不包含在结果列表中的第一项的可选索引;在达到 stop 之前停止生成列表。
|
step
|
默认值为 1 增量(默认值为 1)。此值可能为负数。 |
复活节
string repr(x)
repr("ab") == '"ab"'
参数
参数 | 说明 |
---|---|
x
|
必需 要转换的对象。 |
reversed
list reversed(sequence)
reversed([3, 5, 4]) == [4, 5, 3]
参数
参数 | 说明 |
---|---|
sequence
|
必需 要反转的可迭代序列(例如列表)。 |
已排序
list sorted(iterable, *, key=None, reverse=False)
sorted([3, 5, 4]) == [3, 4, 5]
参数
参数 | 说明 |
---|---|
iterable
|
必需 要排序的可迭代序列。 |
key
|
默认值为 None 在比较之前应用于每个元素的可选函数。 |
reverse
|
默认值为 False 按降序返回结果。 |
str
string str(x)
str("ab") == "ab" str(8) == "8"
参数
参数 | 说明 |
---|---|
x
|
必需 要转换的对象。 |
tuple
tuple tuple(x=())
tuple([1, 2]) == (1, 2) tuple((2, 3, 2)) == (2, 3, 2) tuple({5: "a", 2: "b", 4: "c"}) == (5, 2, 4)
参数
参数 | 说明 |
---|---|
x
|
默认值为 () 要转换的对象。 |
类型
string type(x)
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"
if type(x) == type([]): # if x is a list
参数
参数 | 说明 |
---|---|
x
|
必需 要检查其类型的对象。 |
zip
list zip(*args)
tuple
的 list
,其中第 i 个元组包含每个参数序列或可迭代对象的第 i 个元素。该列表具有最短输入的大小。使用单个可迭代参数时,它会返回 1 元组的列表。如果没有参数,它将返回一个空列表。示例: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)]
参数
参数 | 说明 |
---|---|
args
|
必需 要压缩的列表。 |