모든 Bazel 파일

문제 신고 Nightly · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

.bzl 파일, BUILD, MODULE.bazel, VENDOR.bazel, WORKSPACE를 비롯한 모든 Bazel 파일에서 사용할 수 있는 메서드

회원

abs

unknown abs(x)

숫자의 절댓값(크기가 동일한 음수가 아닌 숫자)을 반환합니다.
abs(-2.3) == 2.3

매개변수

매개변수 설명
x int 또는 float; 필수
숫자(int 또는 float)

모두

bool all(elements)

모든 요소가 true로 평가되거나 컬렉션이 비어 있으면 true를 반환합니다. 요소는 bool 함수를 사용하여 부울로 변환됩니다.
all(["hello", 3, True]) == True
all([-1, 0, 1]) == False

매개변수

매개변수 설명
elements 필수
문자열 또는 요소 모음입니다.

모두

bool any(elements)

하나 이상의 요소가 True로 평가되면 true를 반환합니다. 요소는 bool 함수를 사용하여 부울로 변환됩니다.
any([-1, 0, 1]) == True
any([False, 0, ""]) == False

매개변수

매개변수 설명
elements 필수
문자열 또는 요소 모음입니다.

bool

bool bool(x=False)

불리언 유형의 생성자입니다. 객체가 None, False, 빈 문자열(""), 숫자 0 또는 빈 컬렉션(예: (), [])인 경우 False를 반환합니다. 그 외의 경우에는 True을 반환합니다.

매개변수

매개변수 설명
x 기본값은 False입니다.
변환할 변수입니다.

dict

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

선택적 위치 인수와 선택적 키워드 인수 집합에서 사전을 만듭니다. 동일한 키가 여러 번 제공되는 경우 마지막 값이 사용됩니다. 키워드 인수를 통해 제공된 항목은 위치 인수를 통해 제공된 항목 다음에 오는 것으로 간주됩니다.

매개변수

매개변수 설명
pairs 기본값은 []
입니다. 요소의 각 길이가 2 (키, 값)인 dict 또는 반복 가능 항목입니다.
kwargs 필수
추가 항목의 사전입니다.

dir

list dir(x)

매개변수 객체의 속성 및 메서드 이름인 문자열 목록을 반환합니다.

매개변수

매개변수 설명
x required
확인할 객체입니다.

enumerate

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를 부동 소수점 값으로 반환합니다.
  • x가 이미 부동 소수점이면 float는 변경하지 않은 상태로 반환합니다.
  • x가 부울이면 float는 참이면 1.0을, 거짓이면 0.0을 반환합니다.
  • x가 int인 경우 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 required
속성에 액세스되는 구조체입니다.
name string; 필수
구조체 속성의 이름입니다.
default 기본값은 unbound
구조체에 지정된 이름의 속성이 없는 경우 반환할 기본값입니다.

Hasattr

bool hasattr(x, name)

객체 x에 지정된 name의 속성 또는 메서드가 있는 경우 True를 반환하고, 그렇지 않으면 False를 반환합니다. 예:
hasattr(ctx.attr, "myattr")

매개변수

매개변수 설명
x 필수
확인할 객체입니다.
name string; required
속성의 이름입니다.

해시

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는 변경하지 않고 반환합니다.
  • x가 부울이면 int는 참이면 1을, 거짓이면 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이 될 수 없습니다. 8진수와 10진수 사이의 혼동을 피하기 위한 것입니다. 문자열로 표현된 숫자의 크기는 int 유형에 허용되는 범위 내에 있어야 합니다.
  • x가 부동 소수점 수이면 int는 0에 가까운 부동 소수점 수의 정수 값을 반환합니다. x가 무한 (NaN 또는 무한대)이면 오류입니다.
x가 다른 유형이거나 값이 위 형식을 충족하지 않는 문자열인 경우 이 함수는 실패합니다. Python의 int 함수와 달리 이 함수는 0개의 인수를 허용하지 않으며, 문자열 인수에 관련 없는 공백을 허용하지 않습니다.

예:

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입니다. x이 정수 리터럴인 것처럼 밑을 감지하려면 2에서 36 (포함) 사이여야 합니다. 또는 0이어야 합니다. 값이 문자열이 아닌 경우 이 매개변수를 제공해서는 안 됩니다.

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 반복 가능 기본값은 []
입니다. 변환할 객체입니다.

최대

unknown max(key=None, *args)

주어진 모든 인수 중 가장 큰 값을 반환합니다. 위치 인수가 하나만 제공되는 경우 비어 있지 않은 반복 가능한 객체여야 합니다. 요소를 비교할 수 없는 경우(예: 정수와 문자열) 또는 인수가 제공되지 않은 경우 오류가 발생합니다.
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)

주어진 모든 인수 중 가장 작은 값을 반환합니다. 위치 인수가 하나만 제공되는 경우 비어 있지 않은 반복 가능해야 합니다. 요소를 비교할 수 없거나(예: 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 필수
확인할 요소입니다.

출력하다

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로 이동하는 목록을 만듭니다. 단일 인수가 제공되면 항목의 범위는 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; required
stop이 제공된 경우 시작 요소의 값, 그렇지 않으면 stop의 값이고 실제 시작은 0입니다.
stop_or_none int; 또는 None 기본값은 None
입니다. 결과 목록에 포함되지 않을 첫 번째 항목의 선택적 색인입니다. stop에 도달하기 전에 목록 생성이 중지됩니다.
step int; 기본값은 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)

제공된 반복 가능 시퀀스의 모든 요소를 포함하는 새로 정렬된 목록을 반환합니다. x < y를 사용하여 x, y 요소 쌍을 비교할 수 없는 경우 오류가 발생할 수 있습니다. reverse 인수가 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; 기본값은 ()
변환할 객체입니다.

유형

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 필수
유형을 확인할 객체입니다.

우편번호

list zip(*args)

tuplelist를 반환합니다. 여기서 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
목록을 압축해야 합니다.