簡體   English   中英

如何在函數中創建字典?

[英]How can I create a dictionary within a function?

我想在我的函數中創建一個詞典,但是不能。 我發現的唯一可能的解決方案是在函數外部並在調用它之前創建字典的名稱。

argentina = {}
def get_dic(file,phone):
    for line in file.readlines():
        if (line[0] == '#'):
            names = line.rstrip().strip()
            phone[names] = ''
        else:
            phone[names] = phone[names] + line.rstrip().strip()

get_dic(open(sys.argv[1],'r'), argentina)

get_dic(open(sys.argv[1],'r'), argentina)將打開一個名為'argentina'的詞典,但我無需提前創建argentina = {}

只需在內部創建字典,然后從函數中將其返回即可:

def get_dic(file):
    phone = {}
    names = None
    for line in file.readlines():
        if line[0] == '#':
            names = line.strip()
            phone[names] = ""
        else:
            phone[names] += line.strip()
    return phone

argentina = get_dic(open(sys.argv[1],'r'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM