如何判断返回的python字符串是否符合json格式

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类型数据")

上面代码中为什么要先判断返回的字符串是否可以转为int类型的呢?

因为实践证明“123”这种也是可以通过上面的校验的(如下图)

 所以要针对这块进行优化下

猜你喜欢

转载自blog.csdn.net/weixin_43569834/article/details/131324344