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

โปรแกรม Python แสดงซับลิสต์ (sublist) ทั้งหมดของลิสต์

กำหนดลิสต์หนึ่งลิสต์ ให้พิมพ์ซับลิสต์ทั้งหมดของลิสต์นั้น

ตัวอย่าง

Input : list = [1, 2, 3]
Output : [], [1], [1, 2], [1, 2, 3], [2], [2, 3], [3]

อัลกอริทึม

ขั้นตอนที่ 1: กำหนดลิสต์
ขั้นตอนที่ 2: สร้างซับลิสต์ว่างไว้ก่อน
ขั้นตอนที่ 3: ใช้ลูป for จนถึงความยาวของลิสต์ที่กำหนด
ขั้นตอนที่ 4: รันลูปจาก i+1 ถึงความยาวลิสต์ เพื่อดึงซับอาร์เรย์ทั้งหมดจาก i ไปทางขวา
ขั้นตอนที่ 5: ตัดซับอาร์เรย์จาก i ถึง j
ขั้นตอนที่ 6: เพิ่มลงในลิสต์อีกอันหนึ่งเพื่อเก็บไว้
ขั้นตอนที่ 7: พิมพ์ผลลัพธ์ท้ายสุด

โค้ดตัวอย่าง

# โปรแกรม Python พิมพ์ซับลิสต์ทั้งหมดจากลิสต์ที่กำหนด
# ฟังก์ชันสร้างซับลิสต์ทั้งหมด
def displaysublist(A):
    # เก็บซับลิสต์ทั้งหมด
    B = [[]]
    # ลูปแรก
    for i in range(len(A) + 1):
        # ลูปที่สอง
        for j in range(i + 1, len(A) + 1):
            # ตัดซับอาร์เรย์
            sub = A[i:j]
            B.append(sub)
    return B

# โค้ดหลัก
A = list()
n = int(input("ป้อนขนาดของลิสต์แรก ::"))
print("ป้อนสมาชิกของลิสต์แรก ::")
for i in range(int(n)):
    k = int(input(""))
    A.append(k)
print("ซับลิสต์คือ ::>", displaysublist(A))

ผลลัพธ์

ป้อนขนาดของลิสต์แรก :: 3
ป้อนสมาชิกของลิสต์แรก :: 1 2 3
ซับลิสต์คือ ::> [[], [1], [1, 2], [1, 2, 3], [2], [2, 3], [3]]