asyncore가 작동하는 방식을 약간 변경해야하고 기본 파일을 수정하고 싶지 않기 때문에 다른 디렉토리에서 asyncore를 가져 오려고합니다.모듈을 다른 디렉토리에서 가져 오는 방법은 무엇입니까?
내 스크립트가있는 폴더에 포함시킬 수 있지만 필요한 모든 모듈을 넣은 후에는 다소 복잡해집니다.
하위 디렉토리를 만들고 빈 __init__.py 파일을 넣는 것에 대해 잘 알고 있습니다. 이것은 작동하지 않습니다. 정확히 어떻게되는지는 모르지만 하위 디렉토리에서 asyncore를 가져 오면 asyncore가 작동하지 않습니다. 구체적으로; connect 메소드는 호출하더라도 전혀 실행되지 않습니다. asyncore를 기본 디렉토리로 이동하고 가져 오는 것이 정상적으로이 문제를 제거합니다.
나는 크게 내 코드를 아래로 미끄러 져 있지만, 여전히 같은 문제가있다 :이 내가 바라 보는거야 정말 간단 뭔가 확신 해요,하지만 난 그냥이 그림 수 아니에요
from Modules import asyncore
from Modules import asynchat
from Modules import socket
class runBot(asynchat.async_chat, object):
def __init__(self):
asynchat.async_chat.__init__(self)
self.connect_to_twitch()
def connect_to_twitch(self):
self.create_socket(socket.AF_INET, socket.SOCK_STREAM)
self.connect(('irc.chat.twitch.tv',6667))
self.set_terminator('\n')
self.buffer=[]
def collect_incoming_data(self, data):
self.buffer.append(data)
def found_terminator(self):
msg = ''.join(self.buffer)
print(msg)
if __name__ == '__main__':
# Assign bots to channels
bot = runBot()
# Start bots
asyncore.loop(0.001)
을 아웃.
(HTTP를 [파이썬에서 다른 폴더에서 파일을 가져 오기]의 가능한 중복 : //stackoverflow.com/questions/4383571/importing-files-from-different-folder-in-python) 두 번째 대답을 확인하십시오. –
아. 나는 특히 __init__.py 파일을 사용하는 것이 효과가 없을 것이라고 말했다. 첫 번째 대답은 잘 작동하지는 않지만 작동하지 않아야합니다. 나는 하나의 대안이 존재한다면, 또는 asyncore가 __init__.py를 가진 서브 폴더를 통해 임포트 될 때 asyncore가 제대로 작동하지 않는 이유에 대한 설명을 주시면 감사하겠습니다. – Yamajac