python 字符串和字典转换提示如下错误:
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
data = { 'aa': 'sssdfads', 'bb': '11.11.11.11', 'cc': '11', 'dd': 'dd', } data = json.dumps(data) #以下内容是base64编码 data = data.encode("utf-8") str_url = base64.b64encode(data) # 被编码的参数必须是二进制数据 print(str_url) aa = base64.b64decode(str_url).decode("utf-8") print(aa) print(type(aa)) aa = json.loads(aa) print(type(aa)) print(aa['cc'])
第一种解决方法:
json.dumps(): 对数据进行编码。
json.loads(): 对数据进行解码。
该方法不需要对字典进行特殊处理了;
第二种解决方法:
首先使用str(data) 将字典转化为字符串
使用eval python和字典是一家~
data = { 'aa': 'sssdfads', 'bb': '11.11.11.11', 'cc': '11', 'dd': 'dd', } data = str(data) #以下内容是base64编码 data = data.encode("utf-8") str_url = base64.b64encode(data) # 被编码的参数必须是二进制数据 print(str_url) aa = base64.b64decode(str_url).decode("utf-8") print(aa) print(type(aa)) aa = eval(aa) print(type(aa)) print(aa['cc'])