เมธอดที่ใช้ได้ในไฟล์ Bazel ทั้งหมด รวมถึงไฟล์ .bzl, BUILD, MODULE.bazel, VENDOR.bazel และ WORKSPACE
สมาชิก
- abs
- ทั้งหมด
- any
- bool
- dict
- dir
- enumerate
- fail
- float
- getattr
- hasattr
- แฮช
- int
- len
- list
- max
- นาที
- พิมพ์
- ช่วง
- repr
- ย้อนกลับ
- ตั้งค่า
- จัดเรียง
- str
- Tuple
- ประเภท
- zip
แบบสัมบูรณ์
unknown abs(x)
abs(-2.3) == 2.3
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
x
|
int หรือ float
ต้องระบุ ตัวเลข (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(x=False)
False
หากออบเจ็กต์เป็น None
, False
, สตริงว่าง (""
), ตัวเลข 0
หรือคอลเล็กชันว่าง (เช่น ()
, []
) มิเช่นนั้นจะแสดงผล True
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
x
|
ค่าเริ่มต้นคือ False ตัวแปรที่จะแปลง |
dict
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
|
int;
ค่าเริ่มต้นคือ 0 ดัชนีเริ่มต้น |
ไม่สำเร็จ
None
fail(msg=None, attr=None, sep=" ", *args)
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
msg
|
ค่าเริ่มต้นคือ None เลิกใช้งานแล้ว: ใช้การอ้างอิงตำแหน่งแทน อาร์กิวเมนต์นี้ทําหน้าที่เหมือนอาร์กิวเมนต์ตําแหน่งนําหน้าโดยนัย |
attr
|
string หรือ None ;
ค่าเริ่มต้นคือ None เลิกใช้งานแล้ว ทำให้ระบบเพิ่มคำนำหน้าที่ไม่บังคับซึ่งมีสตริงนี้ลงในข้อความแสดงข้อผิดพลาด |
sep
|
string;
ค่าเริ่มต้นคือ " " สตริงตัวคั่นระหว่างออบเจ็กต์ ค่าเริ่มต้นคือช่องว่าง (" ") |
args
|
ต้องระบุ รายการค่าที่จัดรูปแบบด้วย debugPrint (ซึ่งเทียบเท่ากับ str โดยค่าเริ่มต้น) และเชื่อมต่อด้วย sep (ค่าเริ่มต้นคือ " ") ซึ่งปรากฏในข้อความแสดงข้อผิดพลาด |
จำนวนลอยตัว
float float(x=unbound)
- หาก
x
เป็นจำนวนทศนิยมอยู่แล้วfloat
จะแสดงผลโดยไม่มีการเปลี่ยนแปลง - หาก
x
เป็นบูลีนfloat
จะแสดงผล 1.0 สำหรับ True และ 0.0 สำหรับ False - หาก
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
|
required โครงสร้างที่มีการเข้าถึงแอตทริบิวต์ |
name
|
string;
required ชื่อของแอตทริบิวต์โครงสร้าง |
default
|
ค่าเริ่มต้นคือ unbound ค่าเริ่มต้นที่จะแสดงในกรณีที่ Struct ไม่มีแอตทริบิวต์ที่มีชื่อที่ระบุ |
hasattr
bool hasattr(x, name)
x
มีแอตทริบิวต์หรือเมธอดของ name
ที่ระบุ ไม่เช่นนั้นจะแสดงผลเป็น False ตัวอย่างhasattr(ctx.attr, "myattr")
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
x
|
ต้องระบุ ออบเจ็กต์ที่จะตรวจสอบ |
name
|
string
required ชื่อของแอตทริบิวต์ |
แฮช
int hash(value)
String.hashCode()
ของ Java ซึ่งก็คือ s[0] * (31^(n-1)) + s[1] * (31^(n-2)) + ... + s[n-1]
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
value
|
string;
required ค่าสตริงที่จะแฮช |
int
int int(x, base=unbound)
- หาก
x
เป็นจำนวนเต็มอยู่แล้วint
จะแสดงผลโดยไม่มีการเปลี่ยนแปลง - หาก
x
เป็นบูลีนint
จะแสดง 1 สำหรับ True และ 0 สำหรับ False - หาก
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 จะไม่มีการใช้คำนำหน้า และหากมีตัวเลขมากกว่า 1 หลัก ตัวเลขนำหน้าต้องไม่ใช่ 0 เพื่อหลีกเลี่ยงความสับสนระหว่างเลขฐานแปดกับเลขฐานสิบ ขนาดของตัวเลขที่แสดงด้วยสตริงต้องอยู่ภายในช่วงที่อนุญาตสำหรับประเภท int - หาก
x
เป็นจำนวนทศนิยมint
จะแสดงผลค่าจำนวนเต็มของจำนวนทศนิยม โดยปัดเศษเข้าหาศูนย์ หาก x ไม่ใช่จำนวนจำกัด (NaN หรือ Infinity) จะถือว่าเป็นข้อผิดพลาด
x
เป็นประเภทอื่น หรือหากค่าเป็นสตริงที่ไม่เป็นไปตามรูปแบบข้างต้น ฟังก์ชันนี้ไม่อนุญาตให้อาร์กิวเมนต์เป็น 0 และไม่อนุญาตให้มีช่องว่างที่ไม่จำเป็นสำหรับอาร์กิวเมนต์สตริง ซึ่งแตกต่างจากฟังก์ชัน int
ของ Pythonตัวอย่าง
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)
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
|
หรือ None ;
ค่าเริ่มต้นคือ None ฟังก์ชันที่ไม่บังคับซึ่งใช้กับแต่ละองค์ประกอบก่อนการเปรียบเทียบ |
args
|
ต้องระบุ องค์ประกอบที่จะตรวจสอบ |
นาที
unknown min(key=None, *args)
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
|
หรือ None ;
ค่าเริ่มต้นคือ None ฟังก์ชันที่ไม่บังคับซึ่งใช้กับแต่ละองค์ประกอบก่อนการเปรียบเทียบ |
args
|
ต้องระบุ องค์ประกอบที่จะตรวจสอบ |
พิมพ์
None
print(sep=" ", *args)
args
เป็นเอาต์พุตการแก้ไขข้อบกพร่อง โดยจะมีสตริง "DEBUG"
และตำแหน่ง (ไฟล์และหมายเลขบรรทัด) ของการเรียกนี้นำหน้า ระบบไม่ได้ระบุวิธีที่แน่นอนในการแปลงอาร์กิวเมนต์เป็นสตริง และอาจเปลี่ยนแปลงได้ทุกเมื่อ โดยเฉพาะอย่างยิ่ง การจัดรูปแบบอาจแตกต่างจาก (และละเอียดยิ่งกว่า) การจัดรูปแบบที่ทำโดย str()
และ repr()
เราไม่แนะนำให้ใช้ print
ในโค้ดเวอร์ชันที่ใช้งานจริงเนื่องจากจะสร้างสแปมให้ผู้ใช้ สำหรับการเลิกใช้งาน ให้ใช้ข้อผิดพลาดที่รุนแรงโดยใช้ fail()
เมื่อเป็นไปได้
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
string;
ค่าเริ่มต้นคือ " " สตริงตัวคั่นระหว่างออบเจ็กต์ ค่าเริ่มต้นคือช่องว่าง (" ") |
args
|
required ออบเจ็กต์ที่จะพิมพ์ |
ช่วง
sequence range(start_or_stop, stop_or_none=None, step=1)
start
ถึง stop
โดยเพิ่มขึ้นทีละ step
หากระบุอาร์กิวเมนต์เดียว รายการจะอยู่ในช่วง 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 ค่าขององค์ประกอบเริ่มต้นหากระบุองค์ประกอบสิ้นสุดไว้ ไม่เช่นนั้นค่าขององค์ประกอบสิ้นสุดและค่าเริ่มต้นจริงจะเป็น 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;
required ลำดับที่วนซ้ำได้ (เช่น รายการ) ที่จะกลับ |
ตั้งค่า
set set(elements=[])
หากเรียกใช้โดยไม่มีอาร์กิวเมนต์ set()
จะแสดงผลชุดว่างใหม่
ตัวอย่างเช่น
set() # an empty set set([3, 1, 1, 2]) # set([3, 1, 2]), a set of three elements set({"k1": "v1", "k2": "v2"}) # set(["k1", "k2"]), a set of two elements
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
elements
|
ค่าเริ่มต้นคือ [] ชุด ลำดับของค่าที่แฮชได้ หรือพจนานุกรม |
จัดเรียง
list sorted(iterable, key=None, *, reverse=False)
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
|
iterable;
required ลำดับที่วนซ้ำได้ที่จะจัดเรียง |
key
|
หรือ None ;
ค่าเริ่มต้นคือ None ฟังก์ชันที่ไม่บังคับซึ่งใช้กับแต่ละองค์ประกอบก่อนการเปรียบเทียบ |
reverse
|
bool;
ค่าเริ่มต้นคือ False แสดงผลลัพธ์จากมากไปน้อย |
str
string str(x)
str("ab") == "ab" str(8) == "8"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
x
|
ต้องระบุ ออบเจ็กต์ที่จะแปลง |
ทูเพิล
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"
if type(x) == type([]): # if x is a list
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
x
|
ต้องระบุ ออบเจ็กต์ที่จะตรวจสอบประเภท |
zip
list zip(*args)
list
ของtuple
โดยที่ทูเพิลที่ i มีองค์ประกอบที่ i จากแต่ละลำดับหรือแต่ละรายการที่วนซ้ำของอาร์กิวเมนต์ รายการจะมีขนาดเท่ากับอินพุตที่สั้นที่สุด หากมีอาร์กิวเมนต์ที่วนซ้ำได้เพียงรายการเดียว ฟังก์ชันจะแสดงผลรายการของ 1-tuple หากไม่มีอาร์กิวเมนต์ ฟังก์ชันจะแสดงผลรายการว่าง ตัวอย่าง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 |