Python 写入文件和 json returns None/null 而不是值

Python writing to file and json returns None/null instead of value

我正在尝试使用以下代码将数据写入文件

#!/usr/bin/python37all
print('Content-type: text/html\n\n')
import cgi
from Alarm import *
import json

htmldata = cgi.FieldStorage()
alarm_time = htmldata.getvalue('alarm_time')
alarm_date = htmldata.getvalue('alarm_date')
print(alarm_time,alarm_date)
data = {'time':alarm_time,'date':alarm_date}
# print(data['time'],data['date'])

with open('alarm_data.txt','w') as f:
    json.dump(data,f)
...

但是当打开文件时,我得到以下输出: {'time':null,'date':null}

打印语句 returns 我将其排除为:14:26 2020-12-12。 我已经用 f.write() 尝试过相同的方法,但它 returns 两个值都与 None 相同。这是 raspberry pi 上的 运行。为什么没有写入正确的值?

--编辑-- 我希望看到的 json 字符串如下:{'time':'14:26','date':'2020-12-12'}

也许你的意思是:

data = {'time':str(alarm_time), 'date':str(alarm_date)}

我希望看到这样的文件内容:

{"time":"14:26","date":"2020-12-12"}

注意双引号:"json 对这些事情非常严格,所以不要欺骗自己在文件中使用单引号 ' 并期望 json 解析它。