2015-05-18 38 views
-2
#Finds the Image descriptions and saves to a list 
url = 'http://www.nasa.gov/rss/dyn/lg_image_of_the_day.rss' 
describe_text = urlopen(url).read() 
description = findall('<description>(.+)</description>',describe_text) 
x = description[1] 

#Button Functions 
def next_button_description(): 
     Help 

每當我按下我的小部件按鈕它將調用該功能,我需要描述[1]將位置更改爲描述[2]等等...每次按鈕。我明顯是一個新手用python請幫忙!!使用Python 2.7如何更改循環中的列表位置

+1

當您將描述[1]更改爲描述[2]時,您希望在描述中添加什麼[1] –

+0

基本描述是程序運行時的描述列表,它從列表中拉出第一個描述。當我按下我的小工具按鈕時,我需要它將描述更改爲列表中的下一個。 – mike

+0

我建議你聲明一個變量爲0(即myVar = 0),當拉描述時,而不是調用descption [1],調用x = description [myVar],然後每次運行按鈕函數時,都會像增加myVar一樣即(myVar = myVar + 1) – Aphire

回答

1

我假設你的代碼的第一部分是「主」即在腳本啓動時運行,這可能不是從列表中提取信息的最佳位置,就好像您計劃不止一次地拖動信息一樣,您將不得不一遍又一遍地重新運行此代碼,這將包括請求列表內容從URL一遍又一遍,更容易的是從URL拉列表一次,然後使用你的widget功能來訪問Ë名單像這樣:

url = 'http://www.nasa.gov/rss/dyn/lg_image_of_the_day.rss' 
describe_text = urlopen(url).read() 
description = findall('<description>(.+)</description>',describe_text) 
global myVariable 
myVariable = 1 
x = description[myVariable] 


#Button Functions 
def next_button_description(): 
    global myVariable 
    myVariable = myVariable + 1 
    x = description[myVariable] 
    return x 

變量「MYVARIABLE」每次運行功能,從1你運行它第一次開始時間,然後2和3等將遞增。

next_button_description()函數每次運行時都會返回下一個索引。

希望這會有所幫助。

+0

描述[0]是垃圾,我不需要顯示,所以當程序運行時需要從[1]開始。是否有一些私人聊天在stackoverflow?我想告訴你我的整個計劃 – mike

+0

不是我知道,而是堅持下去。讓我編輯我的答案,我認爲它會爲你工作 – Aphire

+0

UnboundLocalError:在賦值之前引用的局部變量'myVariable'我收到錯誤 – mike

0

你可以使用:

description.insert(0, <new description>) 

將新的描述添加到前和轉移所有其他

+1

我不認爲他試圖添加到他的名單,但從他的名單拉下一個值 – Aphire

+0

他寫道,他想改變職位 –

+0

是的,他認爲他的意思是他想要訪問的價值,存儲在下一個位置 – Aphire