Python 如何將字串轉為字典

2022-09-21 13:03:10 字數 1435 閱讀 9043

在工作中遇到乙個小問題,需要將乙個 python 的字串轉為字典,比如字串:

user_info = ''
我們想把它轉為下面的字典:

user_info =
有以下幾種方法:

通過 json 來轉換

>>> import json

>>> user_info = ''

>>> user_dict = json.loads(user_info)

>>> user_dict

但是使用 json 進行轉換存在乙個潛在的問題。

>>> user_info = ""

>>> user_dict = json.loads(user_info)

traceback (most recent call last):

file "", line 1, in file "/home/chengjialin/miniconda3/envs/tf1.14/lib/python3.7/json/__init__.py", line 348, in loads

return _default_decoder.decode(s)

file "/home/chengjialin/miniconda3/envs/tf1.14/lib/python3.7/json/decoder.py", line 337, in decode

obj, end = self.raw_decode(s, idx=_w(s, 0).end())

file "/home/chengjialin/miniconda3/envs/tf1.14/lib/python3.7/json/decoder.py", line 353, in raw_decode

obj, end = self.scan_once(s, idx)

json.decoder.jsondecodeerror: expecting property name enclosed in double quotes: line 1 column 2 (char 1)

通過 literal_eval

>>> import ast

>>> user_info = ''

>>> user_dict = ast.literal_eval(user_info)

>>> user_dict

>>> user_info = ""

>>> user_dict = ast.literal_eval(user_info)

>>> user_dict

使用 ast.literal_eval 進行轉換既不存在使用 json 進行轉換的問題,也不存在使用 eval 進行轉換的 安全性問題,因此推薦使用 ast.literal_eval。

Python 如何將字串轉為字典

在工作中遇到乙個小問題,需要將乙個python的字串轉為字典,比如字串 user info 我們想把它轉為下面的字典 user dict 有以下幾種方法 1 通過 json 來轉換 import json user info user dict json.loads user info user d...

Python 如何將字串轉為字典

在工作中遇到乙個小問題,需要將乙個 python 的字串轉為字典,比如字串 user info 我們想把它轉為下面的字典 user dict 有以下幾種方法 1 通過 json 來轉換 import json user info user dict json.loads user info user...

Python 如何將字串常量轉為變數?

1 如何動態生成變數名?m 同學的問題如下 打擾一下大家,請教個問題,已知 list a b c d 如何才能得到以 list 中元素命名的新列表 a b c d 呢?簡單理解,這個問題的意思是,將字串內容作為其它物件的變數名。list 中的元素是字串,此處的 a d 是常量,而在要求的結果中,a ...