2017-09-14 215 views
1

我是Python新手,已經開始使用anaconda/spyder環境進行一些計算。我使用python 2.6,因爲我認爲它與程序有更大的兼容性。來自python輸出的latex表格

我決定在Python中的一些值,並希望將值保存在文本文件的表中。輸出文本文件後,我將把表格複製到我的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」是一個浮動值,我算過,而其餘的我的輸出是字符串,所以我認爲混合是不工作的。如果我將「n1」更改爲字符串,它將打印到文本。是否有方法可以將文本字符串和值組合輸出到文本文件? – sado

回答

0

您需要將float轉換爲字符串。只是一個字符串連接時(如"a" + n1 + "b"將無法​​正常工作,你需要明確轉換的最簡單方法是使用str(n1)像這樣:

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

非常感謝!它的工作和即時興奮:) – sado