亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何正確寫入帶有 fout 功能的輸出?

如何正確寫入帶有 fout 功能的輸出?

瀟瀟雨雨 2021-12-17 16:27:20
我正在嘗試使用 python 文件系統讀取和寫入文件,但我遇到了一些問題。我相信閱讀/打開功能是正確的,但寫作功能讓我很難受。我在一個反轉字典的函數中執行它,我希望它從文本文件中讀取字典而不是在代碼中執行它,這是我調用它的方式(不漂亮但有效):d = fin = open('dict.txt')但是,在將倒排字典寫入文件時,我失敗了。打印倒置 dict 的函數調用是invert_dict(d)所以我想我應該嘗試這樣寫:invert_dict(d) = fout = open('output.txt', 'w')這顯然是錯誤的,但這是我從一本書中得到的。這是我的原始反轉字典函數:def invert_dict(d):    print(' the dictionary is \n' , d)    inverse = dict()    for key in d:        val = d[key]        for i in val:            if i not in inverse:                inverse[i] = [key]            else:                inverse[i].append(key)    return inversed={'vowels':['a','e','i','o','u'], 'letters':['a','b','c','d']}print(invert_dict(d))我應該如何改進我的代碼?提前致謝。
查看完整描述

1 回答

?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

你的代碼很好,只是使用items循環更好,也setdefault更容易:


def invert_dict(d):

    print(' the dictionary is \n' , d)

    inverse = {}

    for k,v in d.items():

        for i in v:

            inverse.setdefault(i,[]).append(k)

    return inverse

編輯:


之前誤解了,所以你應該使用:


import json

d = fin = json.loads(open('dict.txt'))

with open('output.txt', 'w') as fout:

    fout.write(invert_dict(d))


查看完整回答
反對 回復 2021-12-17
  • 1 回答
  • 0 關注
  • 231 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號