2010-11-26 3 views
9

나는 아주 기본적인 질문이있다. 나는 파이썬을 사용하여 n × 12 벡터를 계산합니다. 각 루프 계산 후에 추가 할출력 파일에 80 자보다 긴 행 쓰기 [Python]

y = numpy.array([V1,V2,V3,V4,V5,V6,V7,V8,V9,V10,V11,V12]) 

입니다.

내 문제는 파일에 저장하려고하거나 인쇄하려고 할 때입니다. 파이썬은 자동으로 결과를 200 줄을 초과하는 내선 으로 3 줄로 나눕니다. 이 80 자/줄 동작을 억제 할 수있는 방법이 있습니까? 미리 감사드립니다.

+3

몇 가지 코드를 보여주십시오. 그리고 파일에 실제로 linebreaks가 포함되어 있는지, 터미널이나 다른 것을 보는 데 사용하는 것이 아닌지 확인하십시오. – ThiefMaster

+0

Ok ... y를 얻는 방법을 보여 주지만 내 말을 받아들이는 것은 상당히 복잡합니다. 12 개의 요소와 80 개 이상의 문자가있는 한 줄의 벡터입니다. 중요한 것은 파일을 여는 것입니다. f.write (str (y [:, 0]). replace ('[', ''). replace (']', '') + '\ t' + str (y [:, 1]). 대체 ('[', '') 대체 (']', '') + .....) 다음 닫습니다. 내 출력 (숫자 만)은 3 줄로 표시됩니다. – Saki

+0

p.s. 차이가 있는지 알지 못하지만 IDLE을 사용하고 있습니다. – Saki

답변

22

서식을 제어하면서 배열을 텍스트 파일에 저장하려면 numpy.savetxt()을 사용할 수 있습니다. 화면에 인쇄하려면 선 너비를 제어하는 ​​여러 가지 옵션이 있습니다. 하나는 전화 할 것입니다

numpy.set_printoptions(linewidth=200) 

라인 폭을 더 높은 값으로 설정하십시오.

+0

thx Sven,이게 잘 작동합니다! 젠장, 빨리! – Saki

+0

나를 위해, set_printoptions()에 linewidth 매개 변수를 사용하면 행렬을 콘솔에 인쇄 할 때 아무런 효과가 없습니다. 출력은 여전히 ​​('...'타원 (양쪽 치수 모두)로 서식이 지정됩니다). 다른 옵션은 무엇입니까? – StefanQ

+0

@StefanQ 줄임표는 현재 설정된 줄의 너비와 아무 관련이 없습니다. 기본적으로 표현에 포함 된 항목 수는 제한되어 있습니다. 이것은 아마도'set_printoptions()'로 변경 될 수 있습니다. 자세한 내용은 설명서를 참조하거나 별도의 질문을하십시오. 여기서는이 질문과 완전히 관련이 없으므로. –