ขึ้นอยู่กับความต้องการของโปรแกรม เราอาจต้องการกำหนดค่าในรายการให้กับตัวแปรหลายๆ ตัวพร้อมกัน เพื่อนำไปใช้ในการคำนวณต่อไปในส่วนที่เหลือของโปรแกรม ในบทความนี้เราจะสำรวจแนวทางต่างๆ เพื่อให้บรรลุเป้าหมายนี้
ใช้สำหรับใน
for loop สามารถช่วยให้เราวนซ้ำองค์ประกอบของรายการที่กำหนดในขณะที่กำหนดให้กับตัวแปรที่ประกาศในลำดับที่กำหนด เราต้องพูดถึงตำแหน่งดัชนีของค่าที่จะได้รับมอบหมายให้กับตัวแปร
ตัวอย่าง
listA = ['Mon', ' 2pm', 1.5, '11 miles']
# Given list
print("Given list A: " ,listA)
# using for in
vDay, vHrs, vDist = [listA[i] for i in (0, 2, 3)]
# Result
print ("The variables : " + vDay + ", " + str(vHrs) + ", " +vDist) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list A: ['Mon', ' 2pm', 1.5, '11 miles'] The variables : Mon, 1.5, 11 miles
ด้วย itemgetter
ฟังก์ชัน itergetter จากโมดูลตัวดำเนินการจะดึงข้อมูลรายการสำหรับดัชนีที่ระบุ เรากำหนดให้กับตัวแปรโดยตรง
ตัวอย่าง
from operator import itemgetter
listA = ['Mon', ' 2pm', 1.5, '11 miles']
# Given list
print("Given list A: " ,listA)
# using itemgetter
vDay, vHrs, vDist = itemgetter(0, 2, 3)(listA)
# Result
print ("The variables : " + vDay + ", " + str(vHrs) + ", " +vDist) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list A: ['Mon', ' 2pm', 1.5, '11 miles'] The variables : Mon, 1.5, 11 miles
ด้วย itertools.compress
ฟังก์ชันบีบอัดจากโมดูล itertools จะจับองค์ประกอบโดยใช้ค่าบูลีนสำหรับตำแหน่งดัชนี ดังนั้นสำหรับตำแหน่งดัชนี 0,2 และ 3 เราพูดถึงค่า 1 ในฟังก์ชันการบีบอัด แล้วกำหนดค่าที่ดึงมาให้กับตัวแปร
ตัวอย่าง
from itertools import compress
listA = ['Mon', ' 2pm', 1.5, '11 miles']
# Given list
print("Given list A: " ,listA)
# using itemgetter
vDay, vHrs, vDist = compress(listA, (1, 0,1, 1))
# Result
print ("The variables : " + vDay + ", " + str(vHrs) + ", " +vDist) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list A: ['Mon', ' 2pm', 1.5, '11 miles'] The variables : Mon, 1.5, 11 miles