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

Python - สร้างลิสต์สลับ 0 และ 1

สร้างลิสต์ความยาว N ที่มี 0 และ 1 สลับกัน

วิธีที่ 1: วนลูป Append

result = []
length = 7
for i in range(length):
    if i % 2 == 0:
        result.append(1)
    else:
        result.append(0)
print(result)  # [1, 0, 1, 0, 1, 0, 1]

วิธีที่ 2: Slice Assignment (เร็วกว่า)

import math
length = 7
result = [None] * length
ones_count = math.ceil(length / 2)
zeros_count = length - ones_count

result[::2] = [1] * ones_count
result[1::2] = [0] * zeros_count
print(result)  # [1, 0, 1, 0, 1, 0, 1]

สรุป

Slice assignment เร็วกว่าสำหรับลิสต์ใหญ่