2010-12-01 47 views
1

作業的問題,寫一個被稱爲等功能:replace_all({ '一個': '123', 'B': '扎卜'}, 'ACB')蟒:方括號和結腸

是什麼函數聲明看起來像?

什麼樣的變量是'a':'123'和{}?

+0

他們是否提供了該函數的示例輸出? – 2010-12-01 06:40:09

+1

幸運地做Python作爲功課:-)我們有Pascal。 – invert 2010-12-01 08:13:24

回答

1

{}是空的字典,{'a':'123'}是有關聯的價值'123'

功能看起來像一個關鍵'a'詞典:在Python

def replace_all(replace_map, string): 
    pass # fill in here 
1

函數聲明不涉及任何類型,因爲Python中的變量沒有類型 - 有類型。

你不要單獨聲明函數,你只需要編寫它。函數的第一行看起來像def name_of_function(arguments, go, here):。在你的情況下,有兩件事正在通過:{'a': '123', 'b': 'Zab'}'acb'。所以你需要指定兩個參數,並給它們命名。

{'a': '123', 'b': 'Zab'}是一個單一的「東西」 - 'a': '123'是沒有意義的。整個事情是,而不是一個變量。值的類型是dict。該值表示邏輯映射:即,該值對「'a''對應於'123'的概念進行編碼,並且'b'對應於'Zab'」。

我假設,給定名稱replace_all,意圖是查看'acb'中的每個字符,並將其替換爲字典中相應的值(如果有的話)。

通過使用「key」作爲索引,您可以從dict中獲得「相應的值」。因此,如果你有{'a': '123', 'b': 'Zab'}綁定到變量my_dict,然後評估my_dict['a']給出結果'123',因爲這是與該dict的「a」鍵關聯的值。如果密鑰實際上不在字典中(例如my_dict['c']),則會提高KeyError。您既可以處理異常,也可以使用「安全」訪問功能之一,例如dict.get方法。有關更多信息,請參閱文檔。

0

這樣的函數的聲明是「def replace_all(Dictionary,String):」。 '{}'是指定一個python的字典數據結構,其中'a','b'是鍵,並且它們有自己對應的值。''a':'123'「被稱爲字典的一個項目如果你在這個字典的上下文中考慮「'a':'123'」,否則它是一個字符串),它們可以作爲一個元組來檢索。

有關更多詳細信息,請查看python手冊中的詞典和詞典。物品()