2015-06-14 90 views
-3

我在Python下面的代碼:運行分配字典的鍵的值到一個變量

buildXmlUpdate ('21/12/2015', 1, [{'avail': 1, 'price': 100}, {'avail': 3, 'price': 120}]) 

我得到以下輸出時

def buildXmlUpdate(dfrom, roomId, ldays): 

    start_date_sard.text = dfrom 
    roomId = str(roomId) 
    room_id_sard.text = roomId 
    ldays = {'avail': str(), 'price': str()} 
    availability_in_data.text = ldays['avail'] 
    price_in_data.text = ldays['price'] 

    for n in ldays: 
     print (dfrom, roomId, ldays) 

現在

('21/12/2015', '1', {'avail': '', 'price': ''}) 
('21/12/2015', '1', {'avail': '', 'price': ''}) 

在換句話說:

('21/12/2015', '1', {'avail': 1, 'price': 100}) 
('21/12/2015', '1', {'avail': 3, 'price': 120}) 

正如您在這裏看到的,字典availprice鍵設置爲空字符串,但我想根據方法中的參數ldays設置它們。

我在做什麼錯?

+4

你特別用你自己的硬編碼值覆蓋作爲'ldays'傳遞的值。你爲什麼這樣做? –

+0

除了@DanielRoseman所說的,你能指定更多關於'price_in_data.text','availability_in_data.text'等的內容。我想這些是XML元素,但是這裏缺少一些東西。 –

回答

0

解決:

def buildXmlUpdate(dfrom, roomId, ldays): 

start_date_sard.text = dfrom 
roomId = str(roomId) 
room_id_sard.text = roomId 
#ldays = {'avail': str(), 'price': str()} 
#availability_in_data.text = ldays['avail'] 
#price_in_data.text = ldays['price'] 


for n in ldays: 
    print (dfrom, roomId, n) 
    #availability_in_data.text = get.ldays['avail'] 
    #price_in_data.txt = get.ldays['price'] 
    ldays[-1]['avail'] = str(ldays[-1]['avail']) 
    ldays[-1]['price'] =str(ldays[-1]['price']) 
    availability_in_data.text = ldays[-1]['avail'] 
    price_in_data.text = ldays[-1]['price'] 

謝謝大家!

相關問題