2016-11-07 41 views
-1
的首字母

我的問題設置如下圖所示:印刷字

寫了一個名爲initialDict這需要一個字符串,text,作爲參數,並計算並返回一個字典功能,其中在text一個單詞的每一個字母是一個關鍵。所有的鑰匙應該放在較低的位置。每個鍵的值是以該字母開頭的text中的所有單詞的列表。

輸入:text,串

返回:首字母的詞典:單詞列表對

例如,下面的是正確的輸出。

print(initialDict('The Call of the Wild')) 
{'c':['Call'], 't':['The', 'the'], 'w':['Wild'], 'o':['of']} 

到目前爲止,我有這個,我不知道如果我在賽道與否:

def initialDict(text): 
    dic = {} 
    text.lower() 
    text.split() 
    for i in word: 

我試過的一件事,但它只是跑了一個錯誤。

+0

是什麼讓你覺得你不在正確的軌道上? –

+0

我不太擅長爲字典編寫函數。我的意思是我覺得我在正確的軌道上大部分時間,但我不知道如何去做。我嘗試了一件事,但它只是出了一個錯誤。 –

+0

我將如何去解決其餘的問題? –

回答

0

str.lower()str.split()不直接更改它們的輸入,因爲字符串在Python中是不可變的。

這看起來像一個賦值,所以提示而不是完整的實現:遍歷單詞,你會結合這些調用。

for word in text.lower().split(): 
    # do something to 'word' here 

對於這個問題的另一部分:

  • 要獲得的第一個字母,看起來here,尤其是部分說:「字符串可以索引 ...」
  • 要使該名單,看看here,特別是說「你也可以添加新項目...」的部分

希望tha t有幫助。 docs.python.org/3/tutorial/的教程也是一個很好的資源。

+0

謝謝。這只是針對未上交的考試的評論。因此,我需要將每個單詞的第一個字母作爲關鍵字添加到字典中,然後以該字母開頭的每個單詞將作爲值添加到字典中。我對添加這樣的字典沒有做太多的工作,所以很混亂。 –

+0

我不需要使用每個單詞的索引0將其拉出,但是如何將它作爲一個鍵添加,然後添加值 –

+0

您可以檢查一個鍵是否已經存在'my_dict中的my_key: '。如果沒有,你應該添加一個新的列表。然後你可以把你的單詞放入列表中。 – Draconis