programing

Python JSON 모듈에 '덤프' 특성이 없습니다.

lastcode 2023. 2. 17. 19:39
반응형

Python JSON 모듈에 '덤프' 특성이 없습니다.

2. Linux Python 2.7(x64 Linux)을 .dictJSON 오브젝트에 접속합니다.

>>> import sys
>>> sys.version_info
sys.version_info(major=2, minor=7, micro=0, releaselevel='final', serial=0)

는 용하려합합 i i i i i를 사용하려고 합니다.simplejson로 되돌아가다json(가 발생합니다 ( 표표 、 음음 、 음음 、 음음 、 음음 、 。

>>> try: import simplejson as json
... except ImportError: import json
...                  
>>> metadata = dict()
>>> metadata['foo'] = 'bar'
>>> print metadata
{'foo': 'bar'}
>>> json.dumps(metadata)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'dumps' 

이 기능을 사용하는데 있어 제가 놓치고 있는 게 있나요?json ★★★★★★★★★★★★★★★★★」simplejsonPython 2.7 python python python python python python python python python?

비슷한 문제가 발생했지만 다른 커스텀모듈로 인해 발생하였습니다. 대본에 을 붙였습니다.json.pyJson.py 파일을 모듈로 로드하려고 했습니다.dumps 메서드는 사용할 수 없는 것이 분명합니다.

json.py 스크립트의 이름을 다른 이름(json2.py)으로 바꾸면 문제가 해결되었습니다.

보니 것이 .json"Python" "Python" "Python 입니다.

>>> import json                                                                                                                                                                                                                                                                           
>>> print json.__file__                                                                                                                                                                                                                                                                   
/home/areynolds/opt/lib/python2.5/site-packages/json.pyc

그 오래된 것을 제거함으로써 문제가 해결되었다.감사합니다!

?json ★★★★★★★★★★★★★★★★★」simplejson그그 두두 중나 ?? 같? 같??이 경우 실제 라이브러리 대신 python이 해당 파일을 로드합니다.

이 python 오류를 재현하는 방법:

AttributeError: 'module' object has no attribute 'dumps'

python's python's json에서 .파이다sys.path"python" sys.path" json.py 라는 이름의 파일을 포함한 디렉토리를 추가했습니다.

옵션 1: json을 Import한 후 동일한 에일리어스를 가진 다른 모듈을 Import하여 웰을 포이즈닝합니다.

eric@dev /var/www/sandbox/eric $ python

>>> import json

>>> json.dumps([])
'[]'

>>> import sys as json

>>> json.dumps([])

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'dumps'

옵션 2: python 경로에 json.py이라는 파일을 생성하여 웰을 포이즈닝합니다.

새 파일 json.py을 생성하여 저장합니다.이 코드를 입력합니다.

def foo():
  print "bar"

python 터미널을 열고 json을 Import합니다.

eric@dev /var/www/sandbox/eric/wsgi $ python
>>> import json

>>> type(json)
<type 'module'>

>>> json.dumps([])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'dumps'

>>> json.foo()
bar

당신의 방법이 없다는 것을 말해주고 있어요.그러니 비단뱀에게 이 모듈의 성질에 대해 더 말해달라고 요청하면 누가 독살했는지에 대한 단서를 찾을 수 있을 것입니다.

>>> print json
<module 'json' from 'json.py'>
>>> dir(json)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'foo']
>>> type(json)
<type 'module'>

Python 경로에 "json"이라고 하는 다른 스크립트가 있을 수 있습니다.이 스크립트는 실수로 Import된 것입니다.이 문제를 해결하려면 사용자가 관리하는 시스템의 이름을 바꾸거나

from __future__ import absolute_import

실수로 파일 이름을 다음과 같이 지명을 붙였습니다.json.py.에러가 발생했습니다.

AttributeError: 부분적으로 초기화된 모듈 'json'에 속성 '덤프'가 없습니다(대부분 순환 가져오기로 인해).

을 「이름을 「이름을 붙여 주세요」로했습니다.json1.py새로운 파일을 작성하는 대신.

도움이 되었으면 좋겠다

이전에 프로젝트에 추가한 json_extension 라이브러리를 제거하여 동일한 문제를 해결했습니다.

pip uninstall json_extensions

심지어 json.dump()를 실행하는 동안에도 같은 오류가 발생했습니다.이 경우 오류 문자열이 표시됩니다.

AttributeError: 'file' 개체에 'dump' 특성이 없습니다.

어떻게 고쳤는지...

같은 스크립트에서 파일 기술자의 "json"으로 변수 이름을 사용했기 때문에 이 오류가 발생하였습니다.그래서 변수 이름을 바꾸고 문제를 해결했습니다.

아래 문제와 해결 방법에 대해 논의했습니다.

문제: python에서 Import 함수를 호출하면 python은 작업 디렉토리 내에서 모듈을 찾으려고 합니다.로컬 디렉토리에서 찾을 수 없는 경우 표준 라이브러리 및 기타 글로벌 저장소를 찾습니다.따라서 json 모듈을 Import하려고 하면 디렉토리 내에서 검색하려고 합니다.또한 'json.py'이라는 이름의 파일이 있는 경우 python은 이 모듈을 로드하고 json.py 내에서 'filen' 함수를 찾으려고 합니다.파일 내에서 'filen' 함수가 발견되지 않으면 'filen' 객체에 속성 'filen'이 없습니다.

해결 방법: 'json.py' 파일의 이름을 json_file.py 또는 'json.py' 이외의 이름으로 변경합니다.

이 에러는 다른 컨텍스트에서 발생했지만 여전히 json이라는 이름의 두 가지 중 하나입니다.저는 Django(HTTP 요청에 대한 응답을 준비하는 Python 함수)에서 "뷰"라는 이름을 붙였는데, 이 경우 json 형식의 데이터 요청을 처리하기 위한 뷰입니다.

하지만 나는 그 경치를 "json"이라고 이름 붙였다.나쁜 수작이다.print dir(json)가 내 뷰 "json"에서 덤프 없는 응답을 반환했을 때 나는 혼란스러웠지만, 작동한 유사한 뷰에서 속성 "dumps"를 표시했다.

이 토론으로 나는 그 문제를 해결했다.

언급URL : https://stackoverflow.com/questions/11369734/python-json-module-has-no-attribute-dumps

반응형