มาพูดถึงเครื่องปั่นไฟกันดีกว่า
คำสำคัญที่สำคัญมากและค่อนข้างเป็นหัวข้อขั้นสูง
พวกเขาคืออะไร?
เครื่องกำเนิดมีอยู่ใน Python และช่วยให้เราสร้างลำดับของค่าเมื่อเวลาผ่านไป
อืม.
นั่นหมายความว่าอย่างไร?
มาสำรวจกัน
คุณเห็นไหม เราเคยเรียนเครื่องปั่นไฟมาก่อน
คุณจำช่วง?
ดีช่วงเป็นเครื่องกำเนิด
แต่นั่นคืออะไร?
ตัวสร้างเป็นสิ่งพิเศษใน Python ที่ช่วยให้เราใช้คีย์เวิร์ดพิเศษที่เรียกว่า Yield และสามารถหยุดชั่วคราวและกลับมาทำงานต่อได้
ให้ฉันสาธิตสิ่งนี้ด้วยตัวอย่างเล็กๆ น้อยๆ ที่ดี
คุณจะเห็นเมื่อเราใช้บางอย่างเช่นช่วง
กลอนพูดบางอย่างเช่นรายการ
สมมติว่าเราแปลงช่วงเป็นรายการ
เช่นนั้น
รายการ
จริงๆ แล้วสิ่งที่ทำคือสร้างรายการขนาดใหญ่ สมมติว่ามี 100 รายการในหน่วยความจำ ในหน่วยความจำของคอมพิวเตอร์เทียบกับช่วง
มันสร้างพวกเขาทีละคน
ให้ผมแสดง.
ถ้าฉันสร้างฟังก์ชันแล้วเรียกมันว่า make list
และรายการนี้กำลังจะยอมรับ
หมายเลข.
และรายชื่อสร้าง ทีนี้ เราจะบอกว่าผลลัพธ์เท่ากับอาร์เรย์ว่าง แล้วฉันจะบอกว่า I อยู่ในช่วงของ
เราจะเพิ่มผลลัพธ์ dot append และลองคูณกันเพื่อความสนุก
ฉันครั้งที่จะ
และสุดท้ายเราก็ส่งคืนผลลัพธ์
คุณเห็นไหมว่าเมื่อเราสร้างรายการเหมือนที่เราเพิ่งทำที่นี่ เรากำลังทำสิ่งนี้อยู่
เรากำลังใช้ช่วงเพื่อสร้างรายการและส่งคืนผลลัพธ์ที่จะอยู่ในหน่วยความจำ
สมมุติว่าที่นี่กับ make list ฉันจะบอกว่า list ของฉันจะเท่ากับ make list 100
เมื่อฉันพิมพ์
รายการของฉัน.
และฉันคลิกเรียกใช้
โอ้.
และให้แน่ใจว่าของฉัน
พารามิเตอร์นี่คือชื่อที่ถูกต้อง
และตรวจดูให้แน่ใจว่าสะกดคำต่อท้ายได้
เราได้รับรายการของเรา
แต่รายการนี้อยู่ในความทรงจำของเรา
รายการของฉันชี้ไปยังตำแหน่งในหน่วยความจำ
มันเลยกินเนื้อที่ตอนนี้
ตอนนี้ช่วงเป็นเครื่องกำเนิด
และตัวสร้างจะแตกต่างกันเล็กน้อยเพราะสิ่งนี้ไม่ได้ถูกเก็บไว้ในหน่วยความจำเมื่อเราทำสิ่งนี้เพื่อวนซ้ำ
ช่วงนี้ไม่ได้สร้างรายการยักษ์ของตัวเอง สมมติว่า 0 ถึง 99
แล้วก็เริ่มวนซ้ำ
ไม่ ด้วย for loop มันจะบอกว่า เฮ้ เป็นช่วง ฉันจะให้เลขศูนย์ก่อน แล้วฉันจะให้เลขหนึ่ง
ตามด้วยเลขสอง เลขสาม เลข สี่จนถึง 100
ดังนั้นในความทรงจำ มันไม่เคยสร้างรายการนี้เหมือนที่เรามีด้วย อืม รายการของฉัน
และมันก็ค่อนข้างจะวุ่นวายใช่ไหม?
สมมติว่าเราต้องการสร้างรายการยักษ์
ตอนนี้ สมมติว่าฉันต้องการสร้างรายการด้วย
ดี.
ทั้งอาร์เรย์นี้
ถ้าฉันต้องการ สมมติว่าพิมพ์ที่นี่
รายการยักษ์นี้และฉันคลิกเรียกใช้
โอ้เด็ก.
คุณเห็นว่า?
นั่นเป็นหน่วยความจำจำนวนมากที่ฉันใช้จนหมด
และเมื่อเสร็จแล้ว
ที่มันยังคงหายไป
ฉันสามารถใช้รายการนี้ได้เท่านั้น และจะเข้าถึงรายการนั้นในหน่วยความจำ
จากนั้นเราก็สามารถใช้มันได้ วิธีที่มีประสิทธิภาพมากขึ้นคือการใช้เครื่องกำเนิดไฟฟ้า และสร้างเครื่องเหล่านี้ขึ้นมาทีละเครื่องจริง
ๆ โดยไม่ต้องใช้พื้นที่ในหน่วยความจำ
ตอนนี้ เพื่อให้เราเรียนรู้วิธีใช้งานเครื่องกำเนิดไฟฟ้าและการใช้งานจริง เราต้องไปที่บทเรียนถัดไปและทบทวนความรู้เก่า
ฉันจะปล่อยให้เรื่องนี้เสร็จสมบูรณ์
ในระหว่างนี้ เจอกันใหม่ในวิดีโอหน้าครับ
ลาก่อน.