来自 python 输出的乳胶表

latex tables from python output

我是 Python 的新手,已经开始使用 anaconda/spyder 环境进行一些计算。我使用 python 2.6,因为我认为它与程序的兼容性更好。

我正在确定 Python 中的一些值,并希望将这些值保存在文本文件的 table 中。那些文本文件是输出我将复制 table 到我的乳胶文件。代码看起来像这样

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 是我计算的值,它在打印到文本文件的字符串中,但这不起作用,可能是因为格式是字符串。我不知道如何让它发挥作用,也不知道是否有更聪明的方法来制作漂亮的乳胶tables。

提前致谢。

您需要将浮点数转换为字符串。只是将它与字符串连接(如 "a" + n1 + "b" 将不起作用,您需要显式转换。最简单的方法是像这样使用 str(n1)

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