저는 파이썬 초보자이며 한정자없이 공백 만있는 긴 txt 파일을 처리하려고합니다. 첫 번째 열에 따라 정렬하고 싶습니다.첫 번째 열에 따라 입력 파일을 정렬합니다. 단락 기호는 없지만 공백을 사용합니다.
코드는 정상적으로 컴파일되지만 번호 열 자체의 값이 아니라 첫 번째 열의 첫 번째 값에 따라 출력 파일 만 정렬됩니다. 나는 또한 성공없이 itemgetter 연산자를 시도했다.
나는 이것을 지금 몇 시간 동안 시험해 본 사람이 누구든지 나를 도울 수 있기를 바랍니다. 왜 줄 바꿈 기능이 원하는 효과를 내지 못합니까?
f = open("traj_nvt_20000000.txt","r+")
lines = f.readlines() for line in f.readlines():
line = line.strip()
parts = line.split(" ")
lines = sorted(lines, key=lambda line: line[0])
with open('test123.txt', 'w') as text:
text.writelines(lines)
I 정렬 할 텍스트 파일 테이블의 발췌 :
54 2 -9.5377 -4.02842 -7.51558 7
55 2 -9.6834 -4.88656 -7.29358 7
459 2 -8.76522 -8.30942 -10.144 58
50 1 -9.33774 -4.46175 -7.24097 7
56 2 -8.84618 -4.59922 -7.44773 7
462 2 -10.3377 -9.37008 -10.2265 58
460 2 -8.59323 -8.64832 -9.32914 58
457 1 -8.96511 -8.38283 -9.63619 58
461 2 -9.0727 -7.89321 -9.40869 58
369 1 -5.93643 -6.20083 -7.56102 47
504 2 -7.94033 -2.66938 -10.3925 63
371 2 -6.24752 -6.57434 -7.3023 47
도움이 아주 많이 감사합니다.
이 보인다'''라인 [0]'''처음 * 열을 참조하는 * 여기에 작동하는 작은 테스트입니다 첫 번째 문자보다는 오히려. – wwii
'line [0]'은 이미 첫 번째 열입니다. (내 재생기를 확인하십시오, OP 코드는 약간입니다 ... 퍼지 말입니다. 아이디어는 나오지만 작동하지 않습니다.) –
편집 내용이 정확합니다. culpa. – wwii