def is_json(msg):
# 首先判断是否是字符串
if isinstance(msg, str):
# 在这里先判断是否为数字类型的数据
try:
isinstance(int(msg), int)
return ("这个不是json类型数据")
except:
pass
try:
# 其次进行转换成python自带的数据类型
json.loads(msg)
return ("这个是json类型数据")
except ValueError:
return ("这个不是json类型数据")
else:
return ("这个不是json类型数据")
En el código anterior, ¿por qué juzgamos primero si la cadena devuelta se puede convertir a un tipo int?
Porque la práctica ha demostrado que "123" también puede pasar la verificación anterior (como se muestra en la figura a continuación)
Así que para optimizar para esto