Python – List

og:image

Python – List

การเก็บข้อมูลประเภทลิสต์นั้น เป็นการเก็บข้อข้อมูลแบบมีลำดับของข้อมูลและสามารถอ้างอิงถึงข้อมูลตามลำดับดังกล่าว โดยในลิสต์เดียวกันสามารถจะบรรจุข้อมูลหลายประเภทรวมกันได้

การสร้างลิสต์

การสร้างลิสต์นั้นทำได้โดยการนำข้อมูลมาเรียงกันเป็นลำดับแล้วครอบด้วยเครื่องหมาย “[]” ซึ่งข้อมูลแต่ละตัว แยกออกจากกันด้วยเครื่องหมาย “,” โดยข้อมูลภายในลิสต์นั้นจะสามารถประกอบด้วยข้อมูลต่างประเภทกันได้ เช่น จำนวนเต็ม(integer), เลขทศนิยม(float), ข้อความ(string),…
ตัวอย่างการใช้งาน

# สร้างตัวแปรเพื่อเก็บข้อมูลประเภทลิสต์ สำหรับเก็บคะแนน ซึ่งยังไม่เก็บข้อมูลใดๆ
scores = []

# สร้างตัวแปรเพื่อเก็บข้อมูลประเภทลิสต์ สำหรับเก็บคะแนน ซึ่งเก็บคะแนนที่เป็นจำนวนเต็ม
scores = [85, 62, 70]

# สร้างตัวแปรเพื่อเก็บข้อมูลประเภทลิสต์ สำหรับเก็บคะแนน ซึ่งเก็บข้อมูลหลายประเภทซึ่งในตัวอย่างทำการเก็บข้อมูลประเภทจำนวนเต็ม, เลขทศนิยม และข้อความ
scores = [85, 62, 70, "NA", 90.5, 66, 50]

สำหรับการเก็บข้อมูลของลิสต์นั้น สามารถที่จะบรรจุข้อมูลประเภทลิสต์ซ้อนอยู่ภายในลิสต์ได้อีกด้วย ซึ่งจะเรียกว่า nested ลิสต์
ตัวอย่างการใช้งาน

# กำหนดตัวแปร สำหรับเก็บข้อมูลไฟล์สำหรับชื่อรูปภาพ ซึ่งมีทั้งข้อมูลชื่อไฟล์ที่เป็นข้อความและเป็นลิสต์ซ้อนอยู่
files = [  "IMG_001.JPG", 
           "IMG_002.JPG", 
           ["IMG_003.JPG", "IMG_004.JPG", "IMG_005.JPG"],          
           ["IMG_006.JPG", "IMG_007.JPG"], 
           "IMG_008.JPG"
        ]

จากตัวอย่างเป็นการสร้างข้อมูลแบบลิสต์ซึ่งเก็บข้อมูลหลายประเภทในลิสต์เดียวกัน โดยในตัวอย่าง ภายในลิสต์จะเก็บข้อมูลทั้งรูปแบบข้อความ และลิสต์ซึ่งซ้อนอยู่ภายในลิสต์

การเข้าถึงข้อมูลประเภทลิสต์
  • การเข้าถึงข้อมูลโดยใช้ลำดับข้อมูล(index)
    เราสามารถเข้าถึงข้อมูลในลิสต์โดยใช้ตัวดำเนินการ[] และทำการระบุตำแหน่งเพื่อจะเข้าถึงข้อมูลภายในลิสต์ โดยลำดับของข้อมูลจะเริ่มต้นจากลำดับที่ 0 หากภายในลิสต์บรรจุข้อมูล 10 ตัว จะสามารถเข้าถึงข้อมูลได้จากลำดับที่ 0-9
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปร สำหรับเก็บข้อมูลไฟล์สำหรับชื่อรูปภาพ ซึ่งมีทั้งข้อมูลชื่อไฟล์ที่เป็นข้อความและเป็นลิสต์ซ้อนอยู่
    files = [  "IMG_001.JPG", 
               "IMG_002.JPG", 
               ["IMG_003.JPG", "IMG_004.JPG", "IMG_005.JPG"],          
               ["IMG_006.JPG", "IMG_007.JPG"], 
               "IMG_008.JPG"
            ]
    
    # การเข้าถึงข้อมูลลำดับแรกสุดของลิสต์
    print(files[1])
    # โปรแกรมทำการปรินต์ค่า
    # "IMG_002.JPG"
    
    # การเข้าถึงข้อมูลของลิสต์ที่ซ้อนอยู่ภายในลิสต์ 
    print(files[2])
    # โปรแกรมทำการปรินต์ค่า
    # ["IMG_003.JPG", "IMG_004.JPG", "IMG_005.JPG"]
    
    
    

    จากตัวอย่าง เป็นการเก็บข้อมูลของชื่อไฟล์ซึ่งถูกเก็บด้วยรูปแบบข้อมูลประเภทลิสต์ โดยข้อมูลนั้นจะมีทั้งข้อมูลประเภทข้อความและข้อมูลประเภทลิสต์ซ้อนอยู่ภายใน ตัวอย่างเช่น เมื่อเรียกข้อมูลลำดับที่ 1 (files[1])โปรแกรมจะคืนค่าข้อมูล “IMG_002.JPG” และเมื่อเราทำการเรียกดูข้อมูลลำดับที่ 2 ของลิสต์(files[2]) จะอ้างถึงข้อมูลของลิสต์ [“IMG_003.JPG”, “IMG_004.JPG”, “IMG_005.JPG”] ที่ซ้อนอยู่ภายในลิสต์ดังกล่าว

    หากเราพยายามจะเข้าถึงข้อมูลในลิสต์โดยอ้างอิงลำดับที่นอกเหนือจากลำดับที่มีข้อมูลอยู่จริง โปรแกรมจะเกิดข้อผิดพลาด “IndexError” และการอ้างอิงลำดับข้อมูลนั้นจะอ้างถึงด้วยตัวเลขจำนวนเต็ม(integer) เท่านั้น ไม่สามารถจะอ้างถึงข้อมูลด้วยเลขทศนิยม(float) หากพยายามเข้าถึงข้อมูลด้วยเลขทศนิยมโปรแกรมจะเกิดข้อผิดพลาด “TypeError”

  • การเข้าถึงข้อมูลที่เป็น nested ลิสต์
    การเข้าถึงข้อมูลที่เป็น nested ลิสต์จะต้องใช้การอ้างอิงถึงลำดับแบบ nested
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปร สำหรับเก็บข้อมูลไฟล์สำหรับชื่อรูปภาพ ซึ่งมีทั้งข้อมูลชื่อไฟล์ที่เป็นข้อความและเป็นลิสต์ซ้อนอยู่
    files = [  "IMG_001.JPG", 
               "IMG_002.JPG", 
               ["IMG_003.JPG", "IMG_004.JPG", "IMG_005.JPG"],          
               ["IMG_006.JPG", "IMG_007.JPG"], 
               "IMG_008.JPG"
            ]
    
    # การเข้าถึงข้อมูลของลิสต์ที่ซ้อนอยู่ภายในลิสต์ 
    print(files[2][1])
    # โปรแกรมทำการปรินต์ค่า
    # "IMG_004.JPG"
    
    # การเข้าถึงข้อมูลของลิสต์ที่ซ้อนอยู่ภายในลิสต์ 
    print(files[3][0])
    # โปรแกรมทำการปรินต์ค่า
    # "IMG_006.JPG"
    

    จากตัวอย่าง เป็นการเก็บข้อมูลของชื่อไฟล์ซึ่งถูกเก็บด้วยรูปแบบข้อมูลประเภทลิสต์ โดยข้อมูลนั้นจะมีทั้งข้อมูลประเภทข้อความและข้อมูลประเภทลิสต์ซ้อนอยู่ภายใน ตัวอย่างเช่น เมื่ออ้างถึงข้อมูลของลิสต์ files[2][1] โปรแกรมจะเรียกดูข้อมูลลำดับที่ 2 ของลิสต์ชั้นนอกสุด(ซึ่งคือข้อมูล [“IMG_003.JPG”, “IMG_004.JPG”, “IMG_005.JPG”]) และจะเข้าถึงข้อมูลลำดับที่ 1 ของลิสต์ชั้นในที่ซ้อนอยู่ภายในลิสต์ดังกล่าว(ซึ่งก็คือข้อมูล “IMG_004.JPG”)

  • การอ้างถึงลำดับข้อมูลของลิสต์โดยใช้เลขจำนวนลบ
    เราสามารถจะใช้เลขจำนวนลบในการเข้าถึงลำดับของข้อมูล โดย -1 จะอ้างถึงข้อมูลลำดับสุดท้ายของลิสต์ และ -2 จะอ้างถึงข้อมูลลำดับรองสุดท้ายและจำนวนอื่นๆ ไล่ไปตามลำดับ
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # การเข้าถึงข้อมูลลำดับสุดท้ายจากลิสต์ โดยใช้เลขจำนวนเต็มลบ
    print(scores[-1])
    # โปรแกรมทำการปรินต์ค่า
    # 50
    
    # การเข้าถึงข้อมูลลำดับรองสุดท้ายจากลิสต์ โดยใช้เลขจำนวนเต็มลบ
    print(scores[-2])
    # โปรแกรมทำการปรินต์ค่า
    # 66
    
    
  • การเข้าถึงข้อมูลในลิสต์โดยการระบุช่วงของข้อมูล
    เราสามารถเข้าถึงข้อมูลในลิสต์โดยระบุเป็นช่วงของข้อมูลได้ โดยใช้ตัวดำเนินการ “:”
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # การเข้าถึงข้อมูลของลิสต์ โดยระบุช่วงของข้อมูล ลำดับเริ่มต้น,สิ้นสุด
    print( scores[1:3] )
    # โปรแกรมทำการปรินต์ค่า
    # [62, 70]
    
    # การเข้าถึงข้อมูลของลิสต์ โดยระบุช่วงของข้อมูล ลำดับเริ่มต้น,สิ้นสุด
    print( scores[0:2] )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62]
    
    # การเข้าถึงข้อมูลของลิสต์ โดยระบุช่วงของข้อมูลโดยระบุเพียงจุดเริ่มต้น และให้ดึงข้อมูลเริ่มต้นจากตำแหน่งดังกล่าวและข้อมูลตำแหน่งถัดมาออกมาทั้งหมด
    print( scores[4:] )
    # โปรแกรมทำการปรินต์ค่า
    # [90.5, 66, 50]
    
    # การเข้าถึงข้อมูลของลิสต์ โดยระบุช่วงของข้อมูลเริ่มต้น, สิ้นสุด ให้เป็นค่าว่าง โดยจะคืนค่าข้อมูลทั้งหมดภายในลิสต์ออกมา
    print( scores[:] )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, "NA", 90.5, 66, 50]
    
การเปลี่ยนแปลงข้อมูลในลิสต์ โดยการเพิ่มหรือแก้ไขข้อมูล

การเก็บข้อมูลประเภทลิสต์นั้น เราสามารถทำการเปลี่ยนแปลงข้อมูลภายในได้(mutable) โดยข้อมูลแต่ละตัวที่อยู่ภายในลิสต์ยังสามารถเปลี่ยนแปลงได้เสมอ

  • การเปลี่ยนแปลงข้อมูลในลิสต์หรือช่วงข้อมูลโดยใช้เครื่องหมาย “=”
    เราสามารถจะใช้เครื่องหมาย “=” เพื่อจะเปลี่ยนแปลงข้อมูลหรือช่วงของข้อมูลในลิสต์
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # ทำการแก้ไขข้อมูลในลิสต์ ตรงข้อมูลลำดับที่ 3 ให้มีค่าเป็นข้อมูลที่ระบุ
    scores[3] = 80
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, 80, 90.5, 66, 50]
    
    
    # ทำการแก้ไขข้อมูลในลิสต์ ตรงข้อมูลลำดับที่ 4-6 ให้มีค่าเป็นชุดข้อมูลที่ระบุ
    scores[4:7] = [88, 70, 55]
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, 80, 88, 70, 55]
    
  • การเพิ่มข้อมูล โดยใช้ฟังก์ชัน append()
    เราสามารถที่จะเพิ่มข้อมูลเข้าไปในลิสต์โดยใช้ฟังก์ชัน append() หรือหากต้องการเพิ่มข้อมูลหลายตัวก็ใช้ฟังก์ชัน extend()
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # ทำการเพิ่มข้อมูลในลิสต์ ตรงตำแหน่งต่อจากข้อมูลตัวสุดท้าย
    scores.append(70)
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, "NA", 90.5, 66, 50, 70]
    
    # ทำการเพิ่มข้อมูลทั้งหมดจากลิสต์ที่กำหนด ลงไปในลิสต์ ตรงตำแหน่งต่อจากข้อมูลตัวสุดท้าย
    scores.extend([59, 65, 90])
    print(scores)
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, "NA", 90.5, 66, 50, 70, 59, 65, 90]
    
  • การรวมข้อมูลลิสต์โดยใช้เครื่องหมาย “+”
    เราสามารถใช้ตัวดำเนินการ “+” เพื่อทำการรวมข้อมูลจากลิสต์สองตัว
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรสำหรับเก็บข้อมูลตัวอย่าง
    samples = [1, 2, 3]
    
    # ทำการรวมข้อมูลจากลิสต์สองตัว ให้ข้อมูลทั้งหมดอยู่ภายในลิสต์เดียวกัน
    merge_samples = samples + [4, 5]
    print( merge_samples )
    # โปรแกรมทำการปรินต์ค่า
    # [1, 2, 3, 4, 5]
    
    
  • การคัดลอกข้อมูลซ้ำๆโดยใช้เครื่องหมาย “*”
    เราสามารถใช้ตัวดำเนินการ “*” เพื่อทำการสร้างข้อมูลแบบเดียวกันซ้ำอีกครั้งตามจำนวนครั้งที่ต้องการสร้างข้อมูลซ้ำ
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรสำหรับเก็บข้อมูลตัวอย่าง
    samples = [1, 2, 3]
    
    # ทำการคัดลอกข้อมูลชุดเดิมซ้ำ
    replicate_samples = samples * 2
    print( replicate_samples ) 
    # โปรแกรมทำการปรินต์ค่า
    # [1, 2, 3, 1, 2, 3]
    
  • การเพิ่มข้อมูลเข้าไปในลิสต์
    นอกจากการเปลี่ยนแปลงข้อมูลในลิสต์จากตัวอย่างที่เราได้กล่าวถึงไปแล้ว เรายังสามารถที่จะทำการเพิ่มข้อมูลตัวเดียวหรือหลายตัวลงไปในลิสต์ โดยทำการระบุตำแหน่งที่เราต้องการจะเพิ่มข้อมูลลงไป
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรสำหรับเก็บข้อมูลตัวอย่าง
    samples = [1, 5]
    
    # ทำการเพิ่มข้อมูลใหม่ ลงไปในลิสต์ตามลำดับข้อมูลที่กำหนด
    samples.insert(1, 2)
    print( samples )
    # โปรแกรมทำการปรินต์ค่า
    # [1, 2, 5]
    
    # ทำการเพิ่มข้อมูลใหม่ ลงไปในลิสต์ตามลำดับข้อมูลที่กำหนด
    samples[2:2] = [3, 4]
    print( samples )
    # โปรแกรมทำการปรินต์ค่า
    # [1, 2, 3, 4, 5]
    
การลบข้อมูลออกจากลิสต์

เราสามารถที่จะลบข้อมูลออกจากลิสต์ทีละตัวหรือหลายตัวพร้อมกัน

  • การลบข้อมูลในลิสต์โดยใช้คีย์เวิร์ด “del”
    เราสามารถใช้คีย์เวิร์ด “del” ในการลบข้อมูลที่ละตัวหรืออาจจะทำลบข้อมูลทั้งหมดพร้อมกันในครั้งเดียวก็ได้
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # ทำการลบข้อมูลออกจากลิสต์ตรงตำแหน่งที่ระบุ โดยใช้ฟังก์ชัน del
    del scores[3]
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, 90.5, 66, 50]
    
    # ทำการลบข้อมูลออกจากลิสต์ตรงช่วงของตำแหน่งที่ระบุ โดยใช้ฟังก์ชัน del
    del scores[2:4]
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 66, 50]
    
    # ทำการลบข้อมูลของลิสต์โดยลบออบเจคลิสต์ดังกล่าวทิ้งด้วย
    del scores
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # error: name 'scores' is not defined
    
  • การลบข้อมูลในลิสต์โดยใช้ฟังก์ชัน “remove”
    เราสามารถใช้ฟังก์ชัน “remove” เพื่อจะทำการลบข้อมูล
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # ใช้ฟังก์ชัน "remove" เพื่อลบข้อมูลที่ระบุออกจากลิสต์
    scores.remove("NA")
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, 90.5, 66, 50]
    
  • การลบข้อมูลในลิสต์พร้อมคืนค่าข้อมูลดังกล่าวโดยใช้ฟังก์ชัน “pop”
    การใช้งานฟังก์ชัน “pop” เพื่อจะลบข้อมูล หากไม่ทำการระบุตำแหน่งลงไปจะทำการลบข้อมูลตัวสุดท้าย แล้วคืนค่าข้อมูลนั้นออกมา ซึ่งจะทำให้สามารถทำให้ลิสต์ทำงานแบบ stack ได้(first in, last out) แต่ถ้าเราระบุตำแหน่งข้อมูลที่ต้องการลบลงไป โปรแกรมก็จะคืนค่าข้อมูลดังกล่าวและลบข้อมูลดังกล่าวออก
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # ใช้ฟังก์ชัน "pop" เพื่อจะคืนค่าข้อมูลตามลำดับที่ระบุออกมา แล้วลบข้อมูลดังกล่าวออกจากลิสต์
    pop_score = scores.pop(4)
    print("Pop score: ", pop_score)
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # Pop score: 90.5
    # [85, 62, 70, 'NA', 66, 50]
    
    
    # ใช้ฟังก์ชัน "pop" เพื่อจะคืนค่าข้อมูลตามลำดับสุดท้าย แล้วลบข้อมูลดังกล่าวออกจากลิสต์ ซึ่งเป็นรูปแบบเดียวกับการใช้งาน stack
    pop_score = scores.pop()
    print("Pop score: ", pop_score)
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # Pop score: 50
    # [85, 62, 70, 'NA', 66]
    
  • การลบข้อมูลในลิสต์โดยใช้ฟังก์ชัน “clear”
    เรายังสามารถใช้ฟังก์ชัน “clear” เพื่อทำการจัดการให้ลิสต์นั้นว่างได้
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # การลบข้อมูลทั้งหมดในลิสต์ออก ให้เหลือเพียงลิสต์ว่าง โดยใช้ฟังก์ชัน clear
    scores.clear()
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # []
    
  • การลบข้อมูลในลิสต์โดยใช้การระบุให้เป็นลิสต์ว่าง
    เราสามารถที่จะทำการลบข้อมูลในลิสต์ได้ โดยการกำหนดค่าของข้อมูลที่ต้องการจะลบออกเป็นลิสต์ว่าง
    ตัวอย่างการใช้งาน

    # กำหนดตัวแปรเพื่อเก็บข้อมูลคะแนน โดยจะเก็บข้อมูลที่เป็นเลขจำนวนเต็มและข้อความ
    scores = [85, 62, 70, "NA", 90.5, 66, 50]
    
    # การลบข้อมูลในลิสต์ออกตามตำแหน่งที่ระบุ โดยการกำหนดให้เป็นลิสต์ว่างเพื่อเคลียร์ข้อมูลตำแหน่งนั้น
    scores[3:5] = []
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 70, 66, 50]
    
    # การลบข้อมูลในลิสต์ออกตามตำแหน่งที่ระบุ โดยการกำหนดให้เป็นลิสต์ว่างเพื่อเคลียร์ข้อมูลตำแหน่งนั้น
    scores[2:4] = []
    print( scores )
    # โปรแกรมทำการปรินต์ค่า
    # [85, 62, 50]
    
เทคนิคการสร้างลิสต์ของข้อมูล

เราสามารถจะใช้เทคนิคการสร้างลิสต์ของข้อมูลเพื่อการสร้างลิสต์ของข้อมูลใหม่ โดยในชุดคำสั่งประกอบด้วยคำสั่งสำหรับสร้างข้อมูล(expression) แล้วตามด้วยชุดคำสั่งสำหรับกำหนดจำนวนข้อมูลระบุภายใน for และซึ่งชุดคำสั่งทั้งหมดนี้จะกำหนดขอบเขตอยู่ภายในเครื่องหมาย []
ตัวอย่างการใช้งาน

# สร้างลิสต์ของข้อมูลใหม่ ซึ่งเป็นชุดข้อมูลของเลขยกกำลังของสอง โดยระบุเลขชี้กำลังภายในขอบเขตตัวเลขที่กำหนด(0-4)
pow2 = [2**x for x in range(5)]
print( pow2 )
# โปรแกรมทำการปรินต์ค่า
# [1, 2, 4, 8, 16]

การสร้างลิสต์แบบนี้ตัวอย่างข้างต้น เป็นการสร้างชุดข้อมูลของเลขยกกำลังของสอง โดยระบุเลขชี้กำลังของชุดข้อมูลที่ระบุ ซึ่งคำสั่งทั้งหมดอยู่ภายในบรรทัดเดียวกัน

นอกจากการเขียนในรูปแบบดังกล่าว เราสามารถจะเพิ่มลูป(for statement) หรือเงื่อนไข(if statement) เพิ่มเติมเข้าไปได้อีก เพื่อเป็นเงื่อนไขในการกรองข้อมูลสำหรับสร้างลิสต์ใหม่
ตัวอย่างการใช้งาน

# สร้างลิสต์ของข้อมูลใหม่ โดยเป็นเลขยกกำลังของสอง จากเลขชี้กำลังภายในขอบเขตตัวเลขที่กำหนด(0-4) โดยเลือกเฉพาะเลขชี้กำลังที่มีค่ามากกว่าหรือเท่ากับ 2
pow2 = [2**x for x in range(5) if x > 2]
print( "Power of 2: ", pow2 )
# โปรแกรมทำการปรินต์ค่า
# Power of 2: [8, 16]

# สร้างลิสต์ของข้อมูลใหม่ โดยเป็นตัวเลขในขอบเขตที่กำหนด(0-19) และตัวเลขดังกล่าวต้องเป็นเลขคี่
odd = [x for x in range(20) if x % 2 == 1]
print( "Odd : ", odd )
# โปรแกรมทำการปรินต์ค่า
# Odd : [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
ตรวจสอบข้อมูลในลิสต์ ว่ามีข้อมูลที่ระบุอยู่หรือไม่

เราสามารถจะทำการตรวจสอบว่า มีข้อมูลที่ระบุอยู่ในลิสต์หรือไม่ได้ โดยใช้คีย์เวิร์ด “in”
ตัวอย่างการใช้งาน

# สร้างตัวแปรประเภทลิสต์เพื่อเก็บข้อมูลรายชื่อนักเรียน
students = ["David", "Peter", "Mary"]

# ทำการตรวจสอบว่าในตัวแปร เก็บข้อมูลนักเรียนที่ชื่อ "David" ไว้หรือไม่
print("David" in students)
# โปรแกรมทำการปรินต์ค่า
# True

# ทำการตรวจสอบว่าในตัวแปร เก็บข้อมูลนักเรียนที่ชื่อ "Nicole" ไว้หรือไม่
print("Nicole" in students)
# โปรแกรมทำการปรินต์ค่า
# False

# ทำการตรวจสอบว่าในตัวแปร เก็บข้อมูลนักเรียนที่ชื่อ "Mary" ไว้หรือไม่
print("Mary" in students)
# โปรแกรมทำการปรินต์ค่า
# True
ทำการเข้าถึงของมูลทั้งหมดในลิสต์

เราสามารถใช้ for loop เพื่อทำการเข้าถึงข้อมูลแต่ละตัวในลิสต์
ตัวอย่างการใช้งาน

# สร้างตัวแปรประเภทลิสต์เพื่อเก็บข้อมูลรายชื่อนักเรียน
students = ["David", "Peter", "Mary"]

# ใช้ for loop เพื่อเข้าถึงข้อมูลแต่ละตัวในลิสต์ตามลำดับ
for name in students:
     print("name: ", name)

# โปรแกรมทำการปรินต์ค่า
# name: David
# name: Peter
# name: Mary
ฟังก์ชันของลิสต์ที่สามารถใช้งานได้

ฟังก์ชันของออบเจคประเภทลิสต์ที่สามารถเรียกใช้งานได้

ชื่อฟังก์ชัน รายละเอียด
append() ทำการเพิ่มข้อมูลใหม่ลงไปที่ตำแหน่งสุดท้ายของลิสต์
extend() ทำการเพิ่มข้อมูลทั้งหมดจากลิสต์หนึ่ง ลงไปยังอีกลิสต์หนึ่ง
insert() ทำการเพิ่มข้อมูลลงไปในลิสต์ตามตำแหน่งที่ระบุ
remove() ทำการลบข้อมูลที่ระบุออกจากลิสต์
pop() ทำการลบและคืนค่าข้อมูลตัวสุดท้ายหรือตามตำแหน่งที่ระบุออกจากลิสต์
clear() ทำการลบข้อมูลทั้งหมดออกจากลิสต์ให้เหลือเป็นลิสต์ว่าง
index() ทำการคืนค่าตำแหน่งของข้อมูลตัวแรกที่พบตามเงื่อนไขที่ระบุ
count() คืนค่าจำนวนของข้อมูลจากค่าข้อมูลที่ระบุเข้าไปเป็นเงื่อนไข
sort() ทำการเรียงลำดับข้อมูลในลิสต์โดยค่าตั้งต้นจะเรียงลำดับจากน้อยไปมาก
reverse() ทำการเรียงลำดับข้อมูลในลิสต์กลับลำดับของการเรียงลำดับข้อมูลในทิศทางตรงข้าม
copy() ทำการคัดลอกข้อมูลของลิสต์( shallow copy )
ฟังก์ชัน built-in ที่สามารถใช้งานร่วมกับลิสต์

ฟังก์ชันทั่วไปที่สามารถใช้ร่วมกับออบเจคประเภทลิสต์ได้

ชื่อฟังก์ชัน รายละเอียด
all() จะคืนค่า True ถ้าข้อมูลทุกตัวในลิสต์เป็น True หรือลิสต์ดังกล่าวเป็นลิสต์ว่าง
any() จะคืนค่า True ถ้าข้อมูลตัวใดตัวหนึ่งในลิสต์เป็น True
enumerate() จะคืนค่า enuerate object โดยจะมีข้อมูลของ index และ value ของข้อมูลในลิสต์(ข้อมูลออกมาในรูปแบบข้อมูลชนิด tuple)
len() จะคืนค่าจำนวนของข้อมูลในลิสต์
list() จะแปลงลิสต์ให้ iterate ได้
max() จะคืนค่า ข้อมูลที่มีค่ามากที่สุดในลิสต์
min() จะคืนค่า ข้อมูลที่มีค่าน้อยที่สุดในลิสต์
sorted() จะคืนลิสต์ใหม่ของข้อมูลที่ถูกทำการเรียงลำดับใหม่(ไม่ได้ทำการแก้ไขลิสต์เดิม)
sum() จะคืนค่า ผลรวมของทุกข้อมูลในลิสต์

ที่มาของข้อมูล:
https://www.programiz.com/python-programming/list
https://www.w3schools.com/python/python_ref_list.asp