2017-10-17 1611 views
-2

我想將我的python保存爲json文件,但事實是,我需要將我的json文件名稱命名爲標題名稱。將文件名保存爲Python中的變量名稱

代碼:

data={ 
    "Title" : title.text, 
    "Registration": doctor.text, 
    "Keywords": list2, 
    "Article": list 
} 
#title.text="banana" 

with open('title.text.json', 'w',encoding='UTF-8') as f: 
    json.dump(data, f,ensure_ascii=False) 

我的預期結果是:將它保存爲banana.json

編輯: 它的工作原理與此

with open('%s.json' % title_tag.text, 'w',encoding='UTF-8') as f: 
    json.dump(data, f,ensure_ascii=False) 
+0

你明確地打開了一個名爲'data.json'的文件,然後寫信給它,你爲什麼期望它寫入'banana.json'? – ShadowRanger

+1

[python插入變量字符串作爲文件名]的可能重複(https://stackoverflow.com/questions/14622314/python-inserting-variable-string-as-file-name) – Unni

+0

@ShadowRanger只需編輯它。 – Makiyo

回答

1

您可以使用下面的代碼來實現這個:

with open(title.text, 'w', encoding='UTF-8') as f: 
    json.dump(data, f, ensure_ascii=False) 
+0

它將它保存爲html文件,而不是json文件 – Makiyo

+0

你可以使用string.format來格式化你的字符串.... '''with open('{file_name} .html'.format(file_name = title.text),'w',encoding ='UTF-8')作爲f''' 在python3.6中,您可以通過*打開(f「{title.text} .html」 'w',encoding ='UTF'8')as f * – Ballack

+0

with open('%s.json'%title_tag.text,'w',encoding ='UTF-8')as f: json.dump數據,f,ensure_ascii = False) – Makiyo

相關問題