1.None
表示空无一物,啥都没有存储
空就是空,它不是整形,不是浮点数、也不是字符串,就是一个NoneType。所以在使用len(None)时候回报错,因为NoneType没有字符串才有的方法
2.Null
表示空无一物,啥也没有存储
数据库中才使用Null
在数据库查询是Null就等同于python中的None,表示什么也没有,是个空值
注意
在数据库表中如果存在空字符串,进行表关联操作时可能会出现空值放大的效果,导致表关联后出现了记录数超多。所以在数据库表或dataframe关联时,需要特别处理空字符串这种情形。
重点
python有两种方式获取数据:
1.一种是数据从musql中导出到txt或者csv,然后本地读取。
2.另一种是python直接链接数据库,读取数据;
第一种把数据从mysql导出后,python读取时,空值和NULL在文件中都为NULL;
python读取之后为NaN
第二种链接数据库后,python能读取表结构,数据库的NULL对应列表中的None以及pandas中的NaN。而数据库中的空字符,则被识别为空字符。
问题
1.那python要怎么处理数据库为Null的问题(django解决自定义序列化返回处理数据为Null的问题)
在接口返回数据时,如果数据库表中查询出来的某些字段为Null时,在前端需要多处理一些数据异常的情况。
django