Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การสร้างลิสต์ Boolean ใน Python

บางครั้งต้องการสร้างลิสต์ที่มีเฉพาะค่า Boolean (True/False) มีหลายวิธีการทำ

วิธีที่ 1: ใช้ List Comprehension กับ range

res = [True for i in range(6)]
print("The list with boolean elements:\n", res)

ผลลัพธ์

The list with boolean elements: [True, True, True, True, True, True]

วิธีที่ 2: ใช้ * Operator (คูณลิสต์)

วิธีที่สั้นที่สุดและเร็วที่สุดสำหรับค่าซ้ำ

res = [False] * 6
print("The list with boolean elements:\n", res)

ผลลัพธ์

The list with boolean elements: [False, False, False, False, False, False]

วิธีที่ 3: ใช้ bytearray

bytearray(n) สร้างอาร์เรย์ไบต์ขนาด n ไบต์ ค่าเริ่มต้นเป็น 0 แปลงเป็นลิสต์ได้

res = list(bytearray(5))
print("The list with binary elements:\n", res)

ผลลัพธ์

The list with binary elements: [0, 0, 0, 0, 0]

หมายเหตุ: วิธีที่ 3 ให้ค่าเป็นตัวเลข 0/1 ไม่ใช่ True/False โดยตรง แต่ใน Python 0 ถือว่า False และ 1 ถือว่า True สามารถแปลงได้ด้วย list(map(bool, bytearray(5)))

การเลือกใช้: วิธีที่ 2 ([value] * n) เร็วที่สุดและอ่านง่ายที่สุดสำหรับค่าคงที่ วิธีที่ 1 เหมาะสำหรับกรณีต้องคำนวณค่าแต่ละตัว (เช่น สลับ True/False)