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


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

在實際工作中,有時候需要對判斷字符串是否為合法的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格式方法分享的全部內容,希望對大家有所幫助。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM