Python Empty List Tutorial - วิธีสร้างรายการว่างใน Python

หากคุณต้องการเรียนรู้วิธีสร้างรายการว่างใน Python อย่างมีประสิทธิภาพบทความนี้เหมาะสำหรับคุณ

คุณจะได้เรียนรู้:

  • []วิธีการสร้างรายการที่ว่างเปล่าโดยใช้วงเล็บ
  • วิธีสร้างรายการว่างโดยใช้list().
  • กรณีการใช้งาน
  • มันมีประสิทธิภาพเพียงใด (อันหนึ่งเร็วกว่าอีกอัน!) เราจะใช้timeitโมดูลเพื่อเปรียบเทียบ

เอาล่ะ! ✨

🔹ใช้วงเล็บเหลี่ยม

คุณสามารถสร้างรายการว่างโดยใช้วงเล็บเหลี่ยมที่ว่างเปล่าดังนี้:  

💡เคล็ดลับ:เรากำหนดรายการว่างให้กับตัวแปรเพื่อใช้ในโปรแกรมของเราในภายหลัง

ตัวอย่างเช่น:

num = []

รายการว่างจะมีความยาว0ดังที่คุณเห็นที่นี่:

>>> num = [] >>> len(num) 0

รายการที่ว่างเปล่าfalsyค่าซึ่งหมายความว่าพวกเขาจะประเมินFalseในบริบทแบบบูล:

>>> num = [] >>> bool(num) False

เพิ่มองค์ประกอบในรายการที่ว่างเปล่า

คุณสามารถเพิ่มองค์ประกอบในรายการว่างโดยใช้วิธีการappend()และinsert():

  • append() เพิ่มองค์ประกอบที่ส่วนท้ายของรายการ
  • insert() เพิ่มองค์ประกอบที่ดัชนีเฉพาะของรายการที่คุณเลือก

เนื่องจากรายการอาจเป็นได้ทั้งค่าจริงหรือค่าเท็จขึ้นอยู่กับว่ารายการเหล่านั้นว่างหรือไม่เมื่อได้รับการประเมินคุณสามารถใช้ในเงื่อนไขดังนี้:

if num: print("This list is not empty") else: print("This list is empty")

ผลลัพธ์ของรหัสนี้คือ:

This list is empty

เนื่องจากรายการว่างเปล่าดังนั้นจึงประเมินเป็น False

โดยทั่วไป:

  • หากรายการไม่ว่างเปล่าระบบจะประเมินเป็นTrueดังนั้น if clause จึงถูกเรียกใช้งาน
  • หากรายการว่างเปล่าระบบจะประเมินเป็นFalseดังนั้นส่วนคำสั่งอื่นจะถูกเรียกใช้

ตัวอย่าง:

numในตัวอย่างด้านล่างเราจะสร้างรายการที่ว่างเปล่าและกำหนดให้ตัวแปร จากนั้นใช้ for loop เพิ่มลำดับขององค์ประกอบ (จำนวนเต็ม) ในรายการที่ว่างเปล่าในตอนแรก:

>>> num = [] >>> for i in range(3, 15, 2): num.append(i)

เราตรวจสอบค่าของตัวแปรเพื่อดูว่ารายการต่อท้ายสำเร็จหรือไม่และยืนยันว่ารายการไม่ว่างเปล่าอีกต่อไป:  

>>> num [3, 5, 7, 9, 11, 13]

💡เคล็ดลับ:เรามักใช้append()เพื่อเพิ่มองค์ประกอบแรกลงในรายการว่าง แต่คุณยังสามารถเพิ่มองค์ประกอบนี้ที่เรียกinsert()เมธอดด้วยดัชนี0:

>>> num = [] >>> num.insert(0, 1.5) # add the float 1.5 at index 0 >>> num [1.5]

🔸การใช้รายการ () ตัวสร้าง

หรือคุณสามารถสร้างรายการว่างโดยใช้ตัวสร้างชนิดlist()ซึ่งจะสร้างวัตถุรายการใหม่

ตามเอกสาร Python:

[]ถ้าไม่มีข้อโต้แย้งจะได้รับสร้างสร้างรายการที่ว่างเปล่าใหม่

💡 เคล็ดลับ:สิ่งนี้จะสร้างวัตถุรายการใหม่ในหน่วยความจำและเนื่องจากเราไม่ได้ส่งผ่านข้อโต้แย้งใด ๆ ไปยังlist()รายการว่างจะถูกสร้างขึ้น

ตัวอย่างเช่น:

num = list()

รายการว่างนี้จะมีความยาว0ดังที่คุณเห็นที่นี่:

>>> num = list() >>> len(num) 0

และเป็นค่าเท็จเมื่อว่างเปล่า (ประเมินว่าFalseอยู่ในบริบทบูลีน):

>>> num = list() >>> bool(num) False

ตัวอย่าง:

นี่คือรายการที่ใช้งานได้อย่างสมบูรณ์ดังนั้นเราจึงสามารถเพิ่มองค์ประกอบเข้าไปได้:

>>> num = list() >>> for i in range(3, 15, 2): num.append(i)

และผลลัพธ์จะเป็นรายการที่ไม่ว่างเปล่าดังที่คุณเห็นที่นี่:

>>> num [3, 5, 7, 9, 11, 13]

🔹ใช้กรณี

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

🔸ประสิทธิภาพ

รอ! ฉันเพิ่งบอกคุณว่า[]เร็วกว่าlist()...

แต่เร็วเท่าไร?

มาตรวจสอบประสิทธิภาพของเวลาโดยใช้โมดูลtimeit

ในการใช้โมดูลนี้ในโปรแกรม Python ของคุณคุณต้องนำเข้า:

>>> import timeit

โดยเฉพาะเราจะใช้ฟังก์ชัน timeit จากโมดูลนี้ซึ่งคุณสามารถเรียกใช้ด้วยไวยากรณ์นี้:

💡 เคล็ดลับ:รหัสจะถูกทำซ้ำหลาย ๆ ครั้งเพื่อลดความแตกต่างของเวลาที่อาจเกิดขึ้นจากปัจจัยภายนอกเช่นกระบวนการอื่น ๆ ที่อาจทำงานอยู่ในขณะนั้น ทำให้ผลลัพธ์มีความน่าเชื่อถือมากขึ้นสำหรับวัตถุประสงค์ในการเปรียบเทียบ

🚦เครื่องหมายของคุณ ... เตรียมพร้อม ... พร้อม! นี่คือรหัสและผลลัพธ์:

ขั้นแรกเรานำเข้าโมดูล

>>> import timeit

จากนั้นเราจะเริ่มทดสอบไวยากรณ์แต่ละรายการ

การทดสอบ[]:

>>> timeit.timeit('[]', number=10**4) 0.0008467000000109692

การทดสอบlist():

>>> timeit.timeit('list()', number=10**4) 0.002867799999989984

💡เคล็ดลับ:ขอให้สังเกตว่ารหัสที่คุณต้องการเวลาที่จะต้องมีการล้อมรอบด้วยราคาเดียวหรือคำพูดคู่'' ""เวลาที่timeitฟังก์ชันส่งกลับจะแสดงเป็นวินาที

เปรียบเทียบผลลัพธ์เหล่านี้:

  • []: 0.0008467000000109692
  • list(): 0.002867799999989984

คุณจะเห็นว่า[]เร็วกว่าlist()มาก 0.002การทดสอบนี้มีความแตกต่างกันประมาณวินาที:

>>> 0.002867799999989984 - 0.0008467000000109692 0.0020210999999790147

ฉันแน่ใจว่าคุณต้องถามสิ่งนี้ในขณะนี้:เหตุใดจึงมีlist()ประสิทธิภาพน้อยกว่า[]ถ้าพวกเขาทำสิ่งเดียวกันทุกประการ

ดี ... list()ช้ากว่าเพราะต้องค้นหาชื่อของฟังก์ชันเรียกมันแล้วสร้างวัตถุรายการในหน่วยความจำ ในทางตรงกันข้าม[]ก็เหมือนกับ "ทางลัด" ที่ไม่ต้องใช้ขั้นตอนกลางมากมายเพื่อสร้างรายการในหน่วยความจำ

ความแตกต่างของเวลานี้จะไม่ส่งผลกระทบต่อประสิทธิภาพของโปรแกรมของคุณมากนัก แต่เป็นเรื่องดีที่ทราบว่าโปรแกรมใดมีประสิทธิภาพมากกว่าและทำงานเบื้องหลังอย่างไร

🔹โดยสรุป

คุณสามารถสร้างรายการว่างโดยใช้วงเล็บเหลี่ยมคู่ว่าง[]หรือตัวสร้างชนิดlist()ซึ่งเป็นฟังก์ชันในตัวที่สร้างรายการว่างเมื่อไม่มีการส่งผ่านอาร์กิวเมนต์

[]โดยทั่วไปจะใช้วงเล็บเหลี่ยมใน Python เพื่อสร้างรายการว่างเนื่องจากเร็วและรัดกุมกว่า

ฉันหวังว่าคุณจะชอบบทความของฉันและพบว่ามีประโยชน์ ตอนนี้คุณสามารถสร้างรายการว่างในโครงการ Python ของคุณ ตรวจสอบหลักสูตรออนไลน์ของฉัน ติดตามฉันบนทวิตเตอร์. ⭐️

หากคุณต้องการเจาะลึกรายชื่อคุณอาจต้องการอ่าน:

  • การต่อท้ายรายการ Python - วิธีการเพิ่มองค์ประกอบในอาร์เรย์อธิบายด้วยตัวอย่าง
  • Python Sort List Array Method - Ascending and Descending อธิบายพร้อมตัวอย่าง
  • Python List ต่อท้าย VS Python List Extend - ความแตกต่างที่อธิบายด้วยตัวอย่างวิธี Array