我想删除imperfect.json中的最后一个逗号并用方括号替换它。使用Python删除字符串的最后一个字符后线条消失
imperfect.json(有在该文件的末尾一个空行)
...
{
"Q1":"1242",
"Q1":"14336",
"Q2":"",
"Q3":"11855",
"Q4":"11496",
"SubmitID":103, "Worksheet":5, "UserID":75},
{
"Q2":"",
"Q2":"11110",
"SubmitID":104, "Worksheet":5, "UserID":75},
但是,当我跑的下面的代码,它删除68行我的原始文件并成功所附右方括号最后。
f2 = open('imperfect.json')
tempstr = f2.read()
tempstr = tempstr[:-1]
tempstr = tempstr + '}]'
with open('useful_input.json', 'w') as perfect_file:
perfect_file.writelines(tempstr)
我在useful_input.json得到
...
{
"Q1":"1629",
"Q2":"1950",
"Q3":"0116",
"Q4":"616",
"SubmitID":91, "Worksheet":4, "UserID":72},
{
"Q4":"0616",
"Q3":"0117",
"SubmitID":92, "Worksheet":4, "UserID":72},
{
"Q1":"14336",
"Q2":"11110"}]
我怎么能只删除imperfect.json的最后一个字符?
'writelines'旨在用于一系列字符串。你是否尝试过'写'? –
我刚刚尝试过,它给出了相同的结果 – Tsing
在我的Ubuntu 14.04系统上,使用Python 2我得到了正确的结果(以'UserID'结尾:75},}]') - 您使用的操作系统和Python版本是什么? –