Я написал функцию для проверки объектов Json в Python. Вот фрагмент кода:Строка цифр принадлежит Json?
def is_json(myjson):
"""
Check whether a string is a json object.
:param myjson: the string to check
:return: True/False
"""
try:
json_object = json.loads(myjson)
except ValueError, e:
return False
return True
Однако, мне удалось найти цифровую строку. Например,
is_json("123") # return True
is_json("-123") # return True
is_json("0123") # return False
is_json(" 123") # return True
С моей точки зрения, номер не должен быть частью данных Json. И я также подтвердил это с некоторыми другими Json formatter tool. Если это так, почему бы json.loads
разрешить строки цифр?
whicg python версия? –
@ ItayMoav-Malimovka Python 2.7.12 – ichbinblau
@Kevin Да, python, похоже, использует RFC 7159, следовательно, это правильно. https://docs.python.org/3/library/json.html –