나는 많은 것들이 들어있는 (ASCII) 파일 인 foo.txt
을 가지고 있지만, 공백으로 구분 된 두 줄의 세 숫자에 대해서만 신경을 쓰고 있습니다. 귀하의 정보 (관련성이 있는지 여부는 알 수 없음)이 줄 앞뒤의 줄 수는 2 줄과 동일하지 않습니다.파이썬에서 파일의 특정 줄에서 3 개의 정수를 얻는 방법은 무엇입니까?
줄에서이 세 숫자를 가져오고 싶습니다. 2를 3 개의 분리 된 정수 또는 3 개의 별도 변수로 저장하거나 상관하지 않는 길이 3의 목록으로 저장하십시오.
linecache.getline()
파일에서 해당 줄을 가져 오려고했지만 그 줄을 하나의 긴 문자열로 가져옵니다 (줄의 각 번호를 자체 문자열로 사용하지 않고). 그리고이 줄을 추출하는 방법을 모르겠습니다. 결과 문자열에서 세 개의 숫자.
여기 내 코드입니다 :
import linecache
linetemp = linecache.getline('foo.txt',2)
#nr = [int(i) for i in line.split(linetemp)]
print nr
주석으로 줄을 정수로 linetemp의 번호를 추출에서 내 시도했지만 linetemp 때문에 하나 개의 문자열 (문자열이 아닌 목록)가 작동하지 않는 것입니다.
linecache.getline()
을 사용하여 향상시킬 수 있거나 foo.txt
2 번 줄에서 3 가지 숫자를 가져 오는 다른 방법이있는 경우 어느 쪽이든 기쁘게 생각합니다.
또는'map (int, linetemp.split())'. –
@kroolik 이것은 Python 3에서는 맵 객체를 제공하지만 Py 2에서는리스트를 제공합니다. 목록 이해는 두 버전 모두에서 작동합니다. – MattDMo
OP는'print nr'을 사용하여 Py2가 사용 중일 가능성이 큽니다. –