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

ความเข้าใจใน Python


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

รายการความเข้าใจ

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

ตัวอย่าง

given_list =[x สำหรับ x ใน range(5)]print(given_list)new_list =[var+3 for var in given_list]print(new_list)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

[0, 1, 2, 3, 4][3, 4, 5, 6, 7]

ความเข้าใจในพจนานุกรม

คล้ายกับข้างต้น เราสามารถจดรายการและสร้างพจนานุกรมจากมันได้

ตัวอย่าง

given_list =[x สำหรับ x ใน range(5)]print(given_list)#new_list =[var+3 for var in given_list]new_dict ={var:var + 3 for var in given_list }print(new_dict) 

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

[0, 1, 2, 3, 4]{0:3, 1:4, 2:5, 3:6, 4:7}

เรายังสามารถนำสองรายการมาสร้างพจนานุกรมใหม่ได้

ตัวอย่าง

list1 =[x สำหรับ x ในช่วง (5)]list2 =['Mon','Tue','Wed','Thu','Fri']print(list1)print(list2)new_dict ={key :value สำหรับ (คีย์, ค่า) ใน zip(list1, list2)}print(new_dict)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

[0, 1, 2, 3, 4]['จันทร์', 'อังคาร', 'พุธ', 'พฤหัสบดี', 'ศุกร์']{0:'จันทร์', 1:'อังคาร', 2:'พุธ', 3:'พฤหัสบดี', 4:'ศุกร์'}

กำหนดความเข้าใจ

เราสามารถใช้แนวทางที่คล้ายคลึงกันด้านบนและสร้างชุดใหม่จากชุดหรือรายการที่มีอยู่ ในตัวอย่างด้านล่าง เราสร้างชุดใหม่โดยการเพิ่ม 3 องค์ประกอบของชุดที่มีอยู่

ตัวอย่าง

given_set ={x สำหรับ x ใน range(5)}print(given_set)new_set ={var+3 for var in given_set}print(new_set)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

{0, 1, 2, 3, 4}{3, 4, 5, 6, 7}

ความเข้าใจของเครื่องกำเนิด

เครื่องกำเนิดไฟฟ้าใหม่สามารถสร้างได้จากรายการที่มีอยู่ เจนเนอเรเตอร์เหล่านี้เป็นหน่วยความจำที่มีประสิทธิภาพเนื่องจากจัดสรรหน่วยความจำเนื่องจากสร้างไอเท็มแทนการจัดสรรตั้งแต่เริ่มต้น

ตัวอย่าง

given_list =[x สำหรับ x ในช่วง(5)]print(given_list)new_set =(var+3 สำหรับ var ใน given_list) สำหรับ var1 ใน new_set:print(var1, end=" ")

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

[0, 1, 2, 3, 4]3 4 5 6 7