개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.11 16:52

readline_completion_function에 대한 질문

목록
  • Firebase러버 5시간 전 2025.08.11 16:52 새글
  • 2
    1
제가 현재 파이썬에서 readline_completion_function을 사용하여 커맨드 라인 인터페이스(CLI)를 구현하고 있습니다. 하지만, readline_completion_function의 사용법을 정확하게 이해하지 못하여 어려움을 겪고 있습니다.

readline_completion_function의 기본 사용법과, 커맨드 라인 인터페이스에서 autocomplete 기능을 구현하는 방법에 대해 알려주실 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  5시간 전



    readline_completion_function은 파이썬의 readline 라이브러리를 사용하여 커맨드 라인 인터페이스(CLI)에 autocomplete 기능을 구현하는 데 사용됩니다.

    readline_completion_function의 기본 사용법은 다음과 같습니다.

    1. readline 라이브러리를 import합니다.
    2. readline.set_completer() 함수를 사용하여 autocomplete 함수를 설정합니다.
    3. readline.parse_and_bind() 함수를 사용하여 TAB 키를 autocomplete 함수로 매핑합니다.

    예를 들어, 다음과 같이 autocomplete 함수를 구현하고 readline_completion_function을 사용할 수 있습니다.

    #hostingforum.kr
    python
    
    import readline
    
    
    
    def autocomplete(text, state):
    
        if state == 0:
    
            self.matches = [i for i in dir(__import__('os')) if i.startswith(text)]
    
        return (self.matches[state])
    
    
    
    readline.set_completer(autocomplete)
    
    readline.parse_and_bind('tab: complete')
    
    


    이 예제에서는 autocomplete 함수를 구현하여 os 모듈의 함수 이름을 autocomplete 기능으로 사용합니다.

    커맨드 라인 인터페이스에서 autocomplete 기능을 구현하는 방법은 다음과 같습니다.

    1. readline 라이브러리를 import합니다.
    2. readline.set_completer() 함수를 사용하여 autocomplete 함수를 설정합니다.
    3. readline.parse_and_bind() 함수를 사용하여 TAB 키를 autocomplete 함수로 매핑합니다.
    4. 커맨드 라인 인터페이스에서 TAB 키를 입력하여 autocomplete 기능을 테스트합니다.

    예를 들어, 다음과 같이 커맨드 라인 인터페이스에서 autocomplete 기능을 구현할 수 있습니다.

    #hostingforum.kr
    python
    
    import readline
    
    
    
    def autocomplete(text, state):
    
        if state == 0:
    
            self.matches = [i for i in dir(__import__('os')) if i.startswith(text)]
    
        return (self.matches[state])
    
    
    
    readline.set_completer(autocomplete)
    
    readline.parse_and_bind('tab: complete')
    
    
    
    while True:
    
        command = input('>>> ')
    
        if command == 'exit':
    
            break
    
    


    이 예제에서는 커맨드 라인 인터페이스에서 TAB 키를 입력하여 autocomplete 기능을 테스트할 수 있습니다.

    2025-08-11 16:53

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 43,351건 / 1 페이지

검색

게시물 검색