[python] Python : stdout에 파일 인쇄
나는 검색했고 다른 방법으로 만 질문을 찾을 수 있습니다 : stdin을 파일에 작성 🙂
파일의 내용을 stdout에 덤프하는 빠르고 쉬운 방법이 있습니까?
답변
확실한. 파일 이름이라는 문자열이 있다고 가정하면 fname
다음이 트릭을 수행합니다.
with open(fname, 'r') as fin:
print(fin.read())
답변
대용량 파일이고 Ben의 솔루션에서 발생할 수있는 것처럼 많은 양의 메모리를 소비하고 싶지 않다면
>>> import shutil
>>> import sys
>>> with open("test.txt", "r") as f:
... shutil.copyfileobj(f, sys.stdout)
또한 작동합니다.
답변
f = open('file.txt', 'r')
print f.read()
f.close()
에서 http://docs.python.org/tutorial/inputoutput.html
파일의 내용을 읽으려면 f.read (size)를 호출하여 일정량의 데이터를 읽고이를 문자열로 반환합니다. size는 선택적 숫자 인수입니다. 크기가 생략되거나 음수이면 파일의 전체 내용을 읽고 반환합니다. 파일이 컴퓨터의 메모리보다 두 배 큰 경우 문제입니다. 그렇지 않으면 최대 size 바이트를 읽고 반환합니다. 파일 끝에 도달하면 f.read ()는 빈 문자열 ( “”)을 반환합니다.
답변
Python3의 단축 버전
print(open('file.txt').read())
답변
당신은 또한 이것을 시도 할 수 있습니다
print ''.join(file('example.txt'))
답변
이것을 시도 할 수 있습니다.
txt = <file_path>
txt_opn = open(txt)
print txt_opn.read()
그러면 파일 출력이 제공됩니다.
답변
pathlib
모듈 로이 작업을 수행해야하는 경우를 사용 pathlib.Path.open()
하여 파일을 열고 다음에서 텍스트를 인쇄 할 수 있습니다 read()
.
from pathlib import Path
fpath = Path("somefile.txt")
with fpath.open() as f:
print(f.read())
또는 간단히 전화하십시오 pathlib.Path.read_text()
.
from pathlib import Path
fpath = Path("somefile.txt")
print(fpath.read_text())