여러 줄의 텍스트 파일이 있습니다. 나도 같은 텍스트 파일을 다시 작성하는 가장 좋은 방법이지만 둥근 값을 찾고반올림 값이있는 텍스트 파일의 행을 다시 쓰는 가장 좋은 방법
0.004061345 0.02444009 -0.02234149 -0.01368116 0.02479915 5.76696e-012
:
0.004 0.024 -0.022 -0.014 0.025 0.000
은 무엇 가장 파이썬 방법이 될 것입니다 각 행은 공백으로 구분 된 값을 가지고?
Here is my solution, a combinaison of PepperoniPizza and Jan Vlcinsky
코드 :
stringNewFile = ''
i = 0 #-- My file as a header that I need to keep untouch
with open('myfile.txt', 'rb') as fin:
for line in fin.readlines():
stringNewFile = stringNewFile + line if i < 6 else stringNewFile + " ".join(map(lambda itm: "{0:.3f}".format(float(itm)), line.split()))+'\n'
i = i + 1
file_handle = open('myfile.txt', 'w')
file_handle.write(stringNewFile)
file_handle.close()
건배!
코드가 있습니까? 지금까지 가지고있는 것을 보여주십시오. 프로그램의 전제는 파일을 읽고, 각 공간에서 줄을 나누고, 문자열을 숫자로 변환하고, 숫자를 반올림하고, 다시 하나의 긴 문자열로 변환하고, 문자열을 다시 파일에 씁니다. 각 단계를 개별적으로 수행 한 다음 함께 사용하십시오. – Adam
아마도 파일을 한 줄씩 읽은 다음 그 줄을 공백으로 나누어 목록으로 만들 것입니다. 그런 다음 목록의 각 요소를 반복하여 문자열을 부동 소수점 값으로 변환합니다. 그러면 float을 반올림하는'round' 함수를 호출 할 수 있습니다. 그 후 다시 파일로 다시 쓸 수 있습니다 – Elias