2011-12-09 3 views
4

내 우분투 11.04 상자에서 작동하도록 파이썬을 비틀어 넣으려고합니다. 어떤 도움이Python noob : "ImportError : No module is internet"

Traceback (most recent call last): 
    File "eamorr.py", line 1, in <module> 
    from twisted.internet import protocol, reactor 
    File "/home/eamorr/Desktop/twisted.py", line 1, in <module> 
ImportError: No module named internet 

:

from twisted.internet import protocol, reactor 

class Echo(protocol.Protocol): 
    def dataReceived(self, data): 
     self.transport.write(data) 

class EchoFactory(protocol.Factory): 
    def buildProtocol(self, addr): 
     return Echo() 

reactor.listenTCP(1234, EchoFactory()) 
reactor.run() 

내가의 바닥에 얻을 수없는이 오류를 얻을 :

은 내가 다음 코드를하려고 할 때, 그러나

sudo apt-get install python-twisted했다 가장 높이 평가했다.

+0

합니까 [이 응답 도움 당신은?] [1]은 모듈 (응용 프로그램에서) 트위스트라는 이름의이 있습니까? [1] : http://superuser.com/questions/161960/installed-python-module-is-not-found –

+0

이 내 시스템에 작동하는 것 같다. 효과가 있으면 가져 오기를 뒤틀어보세요. –

답변

20

문제는 파일 이름입니다. 파이썬은 현재 디렉토리에서 모듈을 찾습니다. twisted.internet을 가져 오려고하면 폴더에있는 파일 (twisted.py)을 찾습니다. 그러나 internet 하위 모듈을 찾을 수 없습니다. 파일의 이름을 바꾸면 Python은 올바른 twisted을로드하고 모든 것이 finde됩니다.

+0

안녕하세요, 파일은 이제 "eamorr.py"라고 불 렸습니다 - 나는 아직도 같은 오류를 얻고 있습니다 ... – Eamorr

+10

아마도'twisted.pyc' 파일이있을 것입니다. 그것도 제거하십시오. –

+0

좋아, 잘 했어. 원래 나는 twisted.py라는 파일을 가지고 있었다. 나는 파일의 이름을 변경했지만'twisted.pyc'도 삭제해야만했다 ... 도와 주셔서 대단히 감사합니다. – Eamorr

0

상대적 가져 오기 대신 절대 가져 오기를 수행하도록 Python 동작을 변경할 수 있습니다. py 파일의 맨 위에 다음을 추가하십시오.

from __future__ import absolute_import

관련 문제