ขึ้นอยู่กับความต้องการของโปรแกรม เราอาจต้องการกำหนดค่าในรายการให้กับตัวแปรหลายๆ ตัวพร้อมกัน เพื่อนำไปใช้ในการคำนวณต่อไปในส่วนที่เหลือของโปรแกรม ในบทความนี้เราจะสำรวจแนวทางต่างๆ เพื่อให้บรรลุเป้าหมายนี้
ใช้สำหรับใน
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