Python将sql数据字符串转换为列表

标签 python

我有字符串形式的 sql 数据,我正在尝试将其转换为列表。

sql = "(10001,'AEX','CCC','X12344','John, Doe','Not indicated','None','No','No','No','\r\n'),(10002,'AEX','CCC','X12344','John, Doe','Not indicated','None','No','No','No','\r\n')"

sql = sql.replace("(", "[")
sql = sql.replace(")", "]")


但是,当我尝试使用 list() 将其转换为列表时,它破坏了一切。

最佳答案

尝试使用 ast.literal_eval 和嵌套列表理解:

>>> from ast import literal_eval as leval
>>> sql = "(10001,'AEX','CCC','X12344','John, Doe','Not indicated','None','No','No','No','\r\n'),(10002,'AEX','CCC','X12344','John, Doe','Not indicated','None','No','No','No','\r\n')"
>>> [[leval(x) for x in i.strip('()').replace(",'", "split'").split('split')[:-1]] for i in sql.replace('\r\n', '').replace('),(', ')split(').split('split')]
[[10001, 'AEX', 'CCC', 'X12344', 'John, Doe', 'Not indicated', 'None', 'No', 'No', 'No'], [10002, 'AEX', 'CCC', 'X12344', 'John, Doe', 'Not indicated', 'None', 'No', 'No', 'No']]
>>> 

关于Python将sql数据字符串转换为列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59959901/

相关文章:

python - 在 Python 中为多边形创建圆边

python - 如何生成一个不以 0 开头且具有唯一数字的随机 4 位数字?

python - 如何使用 beautifulSoup 从网站中提取和下载所有图像?

python - 为 Visual Studio Code 安装 Python 包

python - 预处理后的名称特征重要性图

python - 将一列中的值替换为另一列的特定实例

python - 什么是 "argv",它有什么作用?

java - 当我重新运行程序时,为什么我的客户端不通过套接字向服务器发送数据?

python - 如何使用 webdriver 选择正确的 i-frame

python - 是否可以在 matplotlib 中使用 set_xticklabels 格式化标签?