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

时间:2023-03-09 02:05:03
python判断字符串是否是json格式方法分享

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

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

python判断字符串是否是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格式方法分享的全部内容,希望对大家有所帮助。