2017-09-14 8 views
1

저는 파이썬에 익숙하지 않으며 아나콘다/스파이더 환경을 사용하여 계산을 시작했습니다. 파이썬 2.6은 프로그램과의 호환성이 뛰어나다 고 생각합니다.파이썬 출력의 라텍스 테이블

파이썬에서 일부 값을 결정하고 값을 텍스트 파일의 테이블에 저장하려고합니다. 텍스트 파일이 출력됩니다. 테이블을 내 latex 문서로 복사합니다. 이

import numpy as np 
# Input values 
BC = "g" # Input p=Poor bond or g = Good bond 

if BC == "p": 
n1 = 0.7 
print n1 
elif BC=="g": 
n1 = 1 
print n1 
else: 
print "Missing inddata " 

np.savetxt('Output.txt',['\\'"begin{table}[ht]" '\n' 
         '\\'"centering" '\n' 
         '\\'"begin{tabular}{l|c|c|c|c}" '\n' 
         '\\'"hline"'\\'"hline" '\n' 
         '\\'"textbf{Number of strings} & $" '\\'"beta_{1}$ & $" '\\' "beta_{2}$ & $" '\\' "beta_{3}$ & $" '\\' "beta_{4}$" "\\\\" "[1ex]" '\n' 
         '\\'"hline" '\n' 
         "Two &" n1 "& 75 &" '\\' "cellcolor[gray]{.4} &" '\\' "cellcolor[gray]{.4}" "\\\\"], fmt='%s') 

N1 내가 계산 한 값과 텍스트 파일에 인쇄 된 문자열 사이에있는, 그러나 이것은 형식 문자열 아마도 때문에, 작동하지 않는 것처럼 코드 보인다. 이 작업을 수행하는 방법이나 아름다운 라텍스 테이블을 만드는 더 똑똑한 방법이 있는지 알지 못합니다.

미리 감사드립니다.

+0

은 "N1"내가 나머지 동안 float 값을 계산 한한다 내 출력 문자열, 그래서 내가 무슨 생각으로 혼합물이 작동하지 않는 것 같아요. "n1"문자열로 텍스트로 인쇄 할 변경된 경우. 텍스트 문자열 및 값을 텍스트 파일에 출력 조합을 얻을 수있는 방법이 있나요? – sado

답변

0

플로트를 문자열로 변환해야합니다. 그냥 문자열을 합치 (같은 "a" + n1 + "b" 명시 적으로 변환 할 필요가 작동하지 않습니다 가장 쉬운 방법은과 같이 str(n1)을 사용하는 것입니다.

"Two &" + str(n1) + "& 75 &" 
+1

고마워요! 일하고 너무 기뻐요 :) – sado