.bzl ファイル、BUILD、MODULE.bazel、VENDOR.bazel、WORKSPACE など、すべての Bazel ファイルで使用できるメソッド。
メンバー
- abs
- すべて
- 任意
- bool
- dict
- dir
- enumerate
- fail
- float
- getattr
- hasattr
- hash
- 整数
- レンズ
- list
- 最大
- 分
- 範囲
- repr
- 取り消し
- 並べ替え済み
- str
- タプル
- 種類
- zip
abs
unknown abs(x)数値の絶対値(同じ大きさの正の数値)を返します。
abs(-2.3) == 2.3
パラメータ
パラメータ | 説明 |
---|---|
x
|
int;または float;
必須 数値(整数または浮動小数点数) |
すべて
bool all(elements)すべての要素が True と評価された場合、またはコレクションが空の場合に true を返します。要素は bool 関数を使用してブール値に変換されます。
all(["hello", 3, True]) == True all([-1, 0, 1]) == False
パラメータ
パラメータ | 説明 |
---|---|
elements
|
必須 文字列または要素のコレクション。 |
任意
bool any(elements)少なくとも 1 つの要素が True と評価された場合、true を返します。要素は bool 関数を使用してブール値に変換されます。
any([-1, 0, 1]) == True any([False, 0, ""]) == False
パラメータ
パラメータ | 説明 |
---|---|
elements
|
必須 文字列または要素のコレクション。 |
ブール値
bool bool(x=False)bool 型のコンストラクタ。オブジェクトが
None
、False
、空の文字列(""
)、数値 0
、空のコレクション(()
、[]
など)の場合は False
を返します。それ以外の場合は True
を返します。
パラメータ
パラメータ | 説明 |
---|---|
x
|
デフォルトは False 変換する変数。 |
dict
dict dict(pairs=[], **kwargs)オプションの位置引数とオプションのキーワード引数のセットから、辞書を作成します。同じキーが複数回指定されている場合は、最後の値が使用されます。キーワード引数で指定したエントリは、位置引数で指定したエントリより後とみなされます。
パラメータ
パラメータ | 説明 |
---|---|
pairs
|
デフォルトは [] 要素がそれぞれ長さ 2(キー、値)であるディクショナリ、またはイテラブル。 |
kwargs
|
必須 追加エントリのディクショナリ。 |
dir
list dir(x)文字列のリスト(パラメータ オブジェクトの属性とメソッドの名前)を返します。
パラメータ
パラメータ | 説明 |
---|---|
x
|
必須 確認するオブジェクト。 |
列挙
list enumerate(list, start=0)インデックス(int)と入力シーケンスの項目を含むペア(2 要素のタプル)のリストを返します。
enumerate([24, 21, 84]) == [(0, 24), (1, 21), (2, 84)]
パラメータ
パラメータ | 説明 |
---|---|
list
|
必須 生成します。 |
start
|
int: デフォルトは 0 の開始インデックスです。 |
fail
None
fail(msg=None, attr=None, sep=" ", *args)
実行がエラーで失敗します。
パラメータ
パラメータ | 説明 |
---|---|
msg
|
デフォルトは None 非推奨: 代わりに位置引数を使用してください。この引数は、先頭の位置引数として暗黙的に機能します。 |
attr
|
string;または None
デフォルトは None です 非推奨。この文字列を含むオプションの接頭辞がエラー メッセージに追加されます。 |
sep
|
string;
デフォルトは " " です オブジェクト間の区切り文字。デフォルトはスペース(「 」)です。 |
args
|
必須 debugPrint(デフォルトでは str と同等)でフォーマットされ、sep(デフォルトは「"」)で結合された値のリスト。エラー メッセージに表示されます。 |
float
float float(x=unbound)x を浮動小数点値として返します。<ph type="x-smartling-placeholder">
- </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
|
string;
必須 構造体属性の名前。 |
default
|
デフォルトは unbound 指定された名前の属性が構造体にない場合に返されるデフォルト値。 |
Hasattr
bool hasattr(x, name)オブジェクト
x
に指定された name
の属性またはメソッドがある場合は true、それ以外の場合は false を返します。例:hasattr(ctx.attr, "myattr")
パラメータ
パラメータ | 説明 |
---|---|
x
|
必須 チェックするオブジェクト。 |
name
|
string;
必須 属性の名前。 |
ハッシュ
int hash(value)文字列のハッシュ値を返します。これは、Java の
String.hashCode()
と同じアルゴリズムを使用して確定的に計算されます。つまり、 s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]文字列以外の値のハッシュ化は現在サポートされていません。
パラメータ
パラメータ | 説明 |
---|---|
value
|
string;
必須 ハッシュ化する文字列値。 |
int
int int(x, base=unbound)x を int 値として返します。
x
がすでに int になっている場合、int
は変更せずに返します。x
がブール値の場合、int
は True に対して 1 を返し、False に対して 0 を返します。x
が文字列の場合は、<sign><prefix><digits>
の形式にする必要があります。<sign>
は、"+"
、"-"
、空(正の値と解釈されます)のいずれかです。<digits>
は 0~base
-1 の数字のシーケンスです。ここで、10~35 の数字には a~z の文字(または A~Z)が使用されます。base
が 2/8/16 の場合、<prefix>
は省略可能で、それぞれ 0b/0o/0x(または同等の 0B/0O/0X)にできます。base
がこれらのベースまたは特殊な値 0 以外の値である場合、接頭辞は空にする必要があります。base
が 0 の場合、文字列は整数リテラルとして解釈されます。これは、プレフィックスが使用されている場合、ベース 2/8/10/16 の 1 つが選択されるという意味です。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 の範囲で指定するか、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
|
iterable(イテレブル): デフォルトは [] です。変換するオブジェクト。 |
最大
unknown max(key=None, *args)指定されたすべての引数の中で最大のものを返します。位置引数が 1 つだけ指定されている場合は、空でないイテラブルでなければなりません。要素が比較できない場合(整数と文字列など)、または引数が指定されていない場合はエラーになります。
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
パラメータ
パラメータ | 説明 |
---|---|
key
|
callableまたは None
デフォルトは None 比較の前に各要素に適用されるオプションの関数。 |
args
|
required チェックする要素。 |
分
unknown min(key=None, *args)指定されたすべての引数の中で最小の引数を返します。位置引数を 1 つだけ指定する場合は、空でないイテラブルである必要があります。要素が比較できない場合(int と文字列など)、または引数が指定されていない場合は、エラーになります。
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
パラメータ
パラメータ | 説明 |
---|---|
key
|
callableまたは None
デフォルトは None 比較の前に各要素に適用されるオプションの関数。 |
args
|
required チェックする要素。 |
プリント
None
print(sep=" ", *args)
args
をデバッグ出力として出力します。先頭に、文字列 "DEBUG"
とこの呼び出しの場所(ファイル番号と行番号)が付加されます。引数が文字列に正確に変換される方法は指定されていませんが、いつでも変更される可能性があります。特に、str()
と repr()
によるフォーマットとは異なる場合があります(より詳細な場合があります)。本番環境コードで print
を使用することは、ユーザーにスパムを生成するため推奨されません。非推奨については、可能な限り fail()
を使用してハードエラーを取得することをおすすめします。
パラメータ
パラメータ | 説明 |
---|---|
sep
|
string;
デフォルトは " " です オブジェクト間の区切り文字。デフォルトはスペース(「 」)です。 |
args
|
必須 出力するオブジェクト。 |
範囲
sequence range(start_or_stop, stop_or_none=None, step=1)
step
の増分を使用して、項目が start
から stop
まで進むリストを作成します。引数が 1 つしかない場合、items の範囲は 0 からその要素までです。range(4) == [0, 1, 2, 3] range(3, 9, 2) == [3, 5, 7] range(3, 0, -1) == [3, 2, 1]
パラメータ
パラメータ | 説明 |
---|---|
start_or_stop
|
int;
必須 停止が指定されている場合は開始要素の値、それ以外の場合は停止の値で、実際の開始は 0 です |
stop_or_none
|
int;または None
デフォルトは None です 結果のリストに含めない最初のアイテムのオプションのインデックス。 stop に達する前にリストの生成が停止します。
|
step
|
int;
デフォルトは 1 インクリメント(デフォルトは 1)。負の値の場合もあります。 |
repr
string repr(x)任意のオブジェクトを文字列表現に変換します。これはデバッグに役立ちます。
repr("ab") == '"ab"'
パラメータ
パラメータ | 説明 |
---|---|
x
|
必須 変換するオブジェクト。 |
取り消し済み
list reversed(sequence)元の反復可能なシーケンスの要素を逆順に含む、固定されていない新しいリストを返します。
reversed([3, 5, 4]) == [4, 5, 3]
パラメータ
パラメータ | 説明 |
---|---|
sequence
|
iterable;
必須 反転するイテレブル シーケンス(リストなど)。 |
並べ替え
list sorted(iterable, key=None, *, reverse=False)指定されたイテラブルのシーケンスのすべての要素を含む新しい並べ替えられたリストを返します。要素のペア x、y を x < y を使用して比較できない場合、エラーが発生することがあります。要素は昇順で並べ替えられます。ただし、逆引数が True の場合は降順です。 並べ替えは安定しています。比較結果が同じ要素は、元の相対順序を保持します。
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
パラメータ
パラメータ | 説明 |
---|---|
iterable
|
イテラブル。必須 並べ替えるイテラブル シーケンス。 |
key
|
呼び出し可能関数、または None 。デフォルトは None 。比較前に各要素に適用されるオプションの関数。 |
reverse
|
bool;
デフォルトは 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
|
iterable(イテレブル): デフォルトは () です。変換するオブジェクト。 |
type
string type(x)引数の型名を返します。これはデバッグや型チェックに役立ちます。例:
type(2) == "int" type([1]) == "list" type(struct(a = 2)) == "struct"この関数は将来変更される可能性があります。Python 互換のコードを作成し、将来に備えるには、戻り値の比較にのみ使用します。
if type(x) == type([]): # if x is a list
パラメータ
パラメータ | 説明 |
---|---|
x
|
必須 タイプを確認するオブジェクト。 |
zip
list zip(*args)
tuple
の list
を返します。ここで、i 番目のタプルには、各引数のシーケンスまたはイテラブルの i 番目の要素が含まれます。リストのサイズは、最も短い入力のサイズになります。イテレブルな引数が 1 つの場合、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
|
必要な zip にリストします。 |