def replace_acronym(): # function not yet implemented
#FIND
for abbr, text in acronyms.items():
if abbr == acronym_edit.get():
textadd.insert(0,text)
#DELETE
name = acronym_edit.get().upper()
name.upper()
r =dict(acronyms)
del r[name]
with open('acronym_dict.py','w')as outfile:
outfile.write(str(r))
outfile.close() # uneccessary explicit closure since used with...
message ='{0} {1} {2} \n '.format('Removed', name,'with its text from the database.')
display.insert('0.0',message)
#ADD
abbr_in = acronym_edit.get()
text_in = add_expansion.get()
acronyms[abbr_in] = text_in
# write amended dictionary
with open('acronym_dict.py','w')as outfile:
outfile.write(str(acronyms))
outfile.close()
message ='{0} {1}:{2}{3}\n '.format('Modified entry', abbr_in,text_in, 'added')
display.insert('0.0',message)
tkinter ウィジェットで辞書エントリを編集する機能を追加しようとしています。辞書の形式は{ACRONYM: text, ACRONYM2: text2...}
関数が達成すると私が考えたのは、辞書でエントリを見つけ、頭字語とそれに関連するテキストの両方を削除してから、頭字語とテキストが変更されたものを追加することです。たとえば、エントリがあり、それを関数によって返されるものTEST: test
に変更したい場合に何が起こるかは、ファイルを上書きした (と思った) にもかかわらず、変更されたテキストを追加することです。TEXT: abc
TEXT: testabc
私は何を間違っていますか?