python

超轻量级php框架startmvc

python判断字符串是否是json格式方法分享

更新时间:2020-05-10 04:48 作者:startmvc
在实际工作中,有时候需要对判断字符串是否为合法的json格式解决方法使用json.loads,这样更

在实际工作中,有时候需要对判断字符串是否为合法的json格式

解决方法使用json.loads,这样更加符合‘Pythonic'写法

代码示例:


Python
import json
def is_json(myjson):
 try:
 json_object = json.loads(myjson)
 except ValueError, e:
 return False
 return True

运行代码编辑模式复制折叠

输出结果:


Python
print is_json("{}") #prints True
print is_json("{asdf}") #prints False
print is_json('{ "age":100}') #prints True
print is_json("{'age':100 }") #prints False
print is_json("{\"age\":100 }") #prints True
print is_json('{"age":100 }') #prints True
print is_json('{"foo":[5,6.8],"foo":"bar"}') #prints True

下面再介绍一个方法:


# -*- coding=utf-8 -*-
import json
def check_json_format(raw_msg):
 """
 用于判断一个字符串是否符合Json格式
 :param self:
 :return:
 """
 if isinstance(raw_msg, str): # 首先判断变量是否为字符串
 try:
 json.loads(raw_msg, encoding='utf-8')
 except ValueError:
 return False
 return True
 else:
 return False
if __name__ == "__main__":
 print check_json_format("""{"a":1}""")
 print check_json_format("""{'a':1}""")
 print check_json_format({'a': 1})
 print check_json_format(100)

首先判断变量是否为字符串,否则如果输入为int或这其他类型,会发生错误。

上述程序的输出为:


True
False
False
False

总结

以上就是本文关于python判断字符串是否是json格式方法分享的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:python好玩的项目—色情图片识别代码分享、深入理解python中函数传递参数是值传递还是引用传递、Python面向对象编程基础解析(二)等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!