使用Python列表值賦值給多個變數
根據程式的需要,我們可能需要將列表中的值一次性賦值給多個變數。以便它們可以進一步用於程式其餘部分的計算。在這篇文章中,我們將探討實現這一目標的各種方法。
使用for迴圈
for迴圈可以幫助我們迭代給定列表的元素,同時將它們賦值給給定序列中宣告的變數。我們必須提及將被賦值給變數的值的索引位置。
示例
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
operator模組中的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模組中的compress函式將使用布林值來獲取索引位置的元素。因此,對於索引位置0、2和3,我們在compress函式中指定值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
廣告