-
[Python] ImportError: cannot import name 'ascii_letters' from 'string'이슈 해결 2018. 11. 16. 03:38
ImportError: cannot import name 'ascii_letters' from 'string'
파이썬을 이용해 웹에서 데이터 폼을 서버로 전달하는 과정에서 이상한 에러가 발생하는 문제가 나타났다.
위와 같은 내용으로 데이터 송수신 테스트를 하는 중이었는데 submit을 수행하자 다음과 같은 현상이 나타났다.
에러 페이지가 발생하진 않았는데 내가 입력한 데이터 정보들이 아닌 이상한 정보들이 나타났다.
그래서 서버 로그를 확인해봤다.
error로그를 살펴보면 ImportError가 발생했는데 string으로부터 ascii_letters란 이름을 임포트하지 못했다라는 내용이다.
아마도 string이라는 모듈에 ascii_letters란 기능이 존재하는 모양이다. (왜 string모듈을 import하지 않았는데도 처리되는지는 아직 잘 모르겠다.)
옆에 import하려고 한 string 모듈에 대한 정보를 보면 내가 파이썬 공부를 위해 만들어놓은 파일을 import하려고 시도했다....
해당 파일은 대략 이런 공부한 내용이 있는데 아무래도 파일 명이 파이썬 내부 모듈의 이름과 동일해서 import오류가 발생한 것 같다.
파일 명이 문제인 것 같으니 해당 파일의 이름을 변경하고 다시 테스트를 해봤다.
위와 같이 내용을 작성하고 submit을 눌렀다.
제대로 출력이 되었다.
왜 import하지도 않은 모듈을 import한 것인지 자세하게는 모르지만 예상을 해보자면 String데이터 처리를 위해서 컴파일러가 내부적으로 자동으로 import되도록 처리되는 것 같다.
누가 제대로 알고 있으면 알려줬으면 좋겠다...
요런건 어느정도 숙련자라면 에러로그를 찾아 원인을 예상해볼 수는 있겠으나 이제 막 프로그래밍을 배우기 시작한 사람들은 원인 파악을 예상해볼 수도 없으니 워낙 골칫거리일 것 같다.
'이슈 해결' 카테고리의 다른 글