Python存储list到数据库,重新读取后无法正确识别为list错当str且无法转换的处理办法

如下图所示,有一个字段是list类型。

Python存储list到数据库,重新读取后无法正确识别为list错当str且无法转换的处理办法

读取时打印出来看起来就是list,但是打印类型却显示为str。

Python存储list到数据库,重新读取后无法正确识别为list错当str且无法转换的处理办法

通过类型转换

如果通过类型转换,直接定义为list,则会拆解为一个有一个的字符串 ,显然是不行的。

Python存储list到数据库,重新读取后无法正确识别为list错当str且无法转换的处理办法

通过解析字符串为list

参照这样的方法,我们使用.split()后又发现一个问题。

Python存储list到数据库,重新读取后无法正确识别为list错当str且无法转换的处理办法

第一行及最后一行都带的有一半的方括号,第一行是[,最后一行是],每一行的单引号其实都好处理,但显然要正确识别为list应该不是这样操作。

正确的解决办法

通过eval()函数即可。

这就像JS中的运算式默认会当做字符串,只有通过eval后,才能作为一个整体,而就Python而言,究其原因我不清楚,也可能是和数据库存储类型有关。

原创文章,作者:蓝洛水深,如若转载,请注明出处:https://blog.lanluo.cn/11794

(1)
蓝洛水深的头像蓝洛水深管理员
上一篇 2023年2月5日 下午7:38
下一篇 2023年2月14日 下午10:22

相关推荐

发表回复

登录后才能评论
联系QQ