Python 2의 JSON에서 문자열 개체 검색
Python 2의 ASCII 인코딩 텍스트 파일에서 JSON을 구문 분석할 때 문자열 값이 자동으로 캐스팅됩니다. 유니코드 객체에. 이는 문자열 객체만 허용하는 라이브러리와 인터페이스할 때 문제를 일으킬 수 있습니다.
Python 3으로 업데이트하거나 변환 기능을 사용하는 것이 실행 가능한 솔루션이지만 또 다른 옵션은 PyYAML을 활용하는 것입니다. PyYAML은 문자열 객체를 JSON 파일의 키와 값으로 반환하여 보다 직접적인 접근 방식을 제공합니다.
<code class="python">import yaml list_org = ['a', 'b'] list_dump = json.dumps(list_org) json_result = json.loads(list_dump) yaml_result = yaml.safe_load(list_dump) print(json_result, type(json_result)) # [u'a', u'b'], <type 'list'> print(yaml_result, type(yaml_result)) # ['a', 'b'], <type 'list'></code>
JSON과의 호환성을 보장하려면 PyYAML의 로드 함수를 safe_load로 바꿔야 합니다. 또한, ASCII로 인코딩된 항목은 문자열 개체가 되지만 유니코드로 인코딩된 항목을 사용하면 여전히 유니코드 개체가 생성됩니다.
문자열 개체를 유니코드 개체로 변환해야 하는 경우 Mark Amery의 변환 기능을 사용할 수 있습니다.
<code class="python">from mark_amery import unicode_to_str json_list = json.loads(json_list) str_list = unicode_to_str(unicode_list)</code>
위 내용은 Python 2의 JSON에서 문자열 개체를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!