python에서 file redirection 관해서 질문드립니다!

  • sclee1
    sclee1

    안녕하세요.

    c++에서 freopen을 대체 하기 위해...

    Python으로 파일 입력 받는거를 아래와 같이 코드를 짰는데 좀 불편

    하더라고요

    import sys
    
    sys.stdin = open("input.txt")
    
    TC = (int)(sys.stdin.readline().strip())
    
    print(TC)
    
    for i in range(TC):
    
        board = []
        h, w = map(int, sys.stdin.readline().strip().split())
        for j in range(h):
            row = list(map(lambda x: 0 if x=='.' else 1, sys.stdin.readline().strip()))
            board.append(row)
        break
    

    input.txt파일의 경우 BOARDCOVER 에서 따왔습니다만..

    python으로 파일 redirection 어떻게 하시는지 궁금해서 질문드립니다...(제가 초보라서..엉엉)

    다른 분 소스코드 보니깐 거의다 아래와 같은 식으로 해서 인풋받으시던데

    (input()) 
    

    그냥 저렇게 입출력 하려면 (파일로부터)...뭔가 설정을 하셨는지..
    (키보드로 다 입력하시지는 않을거 같고요...)

    수월하게 하는 법이 있지 않을까 해서 글 남깁니다!


    7년 전
1개의 댓글이 있습니다.
  • hyunhwan
    hyunhwan

    질문이 명확하지 않은 것 같습니다. 위의 소스코드가 잘 동작하지 않는 것인가요? 아니면 redirection 설정 이후에 input method를 원할하게 쓰시는 것을 바라시는건지 궁금하네요.

    그리고 저는 개인적으로는 jongman님의 예전 코드에서 참고해서 sys.stdin.readline().strip() 이 분을 다음과 같이 lambda를 이용하여 작성해서 씁니다.

    rl = lambda : sys.stdin.readline().strip()
    n, m = map(int, rl().strip())
    

    7년 전 link
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.