2014-02-11 206 views
-2

這裏是Hangman的源代碼。這是來自python的書籍發明遊戲。這個變量來自哪裏? Python

words = 'ant baboon badger bat bear beaver camel cat clam cobra cougar coyote crow deer  dog donkey duck eagle ferret fox frog goat goose hawk lion lizard llama mole monkey moose mouse mule newt otter owl panda parrot pigeon python rabbit ram rat raven rhino salmon seal shark sheep skunk sloth snake spider stork swan tiger toad trout turkey turtle weasel whale wolf wombat zebra'.split() 

def getRandomWord(wordList): 
    # This function returns a random string from the passed list of strings. 
    wordIndex = random.randint(0, len(wordList) - 1) 
    return wordList[wordIndex] 

現在,他從哪裏得到變量wordList?這裏只有變量詞!

+0

它是函數'getRandomWord'的一個參數。它可以被稱爲'foo',或其他任何東西 – Krease

+1

作爲一個方面說明,這是一個從列表中獲得隨機樣本的奇怪方法。畢竟,有'random.choice()'... –

+0

神奇的詞是:'功能參數' – bgusach

回答

2

這是從這裏:

def getRandomWord(wordList): 

getRandomWord函數調用的參數,如getRandomWord(words),局部變量wordList將被綁定到指這樣的說法。

+0

'words'已經是一個列表,請查看字符串的末尾,函數'.split()'已經被調用。 – anuragal

+0

@anuragal:哦,是的。應該正確滾動(並且該列表應該以不涉及近400個字符的行的方式構建)。 – user2357112

0

def函數的起始getRandomWord(),wordList定義爲傳遞給該函數的(唯一的,強制的)參數。

因此,如果您傳遞一個列表給它,該列表對象將綁定到本地名稱wordList,並且該函數可以對其執行操作。

0

wordList只是功能getRandomWord的一個參數。它不需要與其他任何東西相匹配,事實上,它可能更清楚。

別的地方的代碼,它可能調用該函數是這樣的:getRandomWord(words)

0

詞表是函數的參數!因此,當您撥打getRandomWord(words)並以words作爲參數時,則words將變爲wordList!!簡單。但是如果你仍然有任何困惑看看here