在打印时显示“ \ n”的表格

时间:2019-06-12 19:36:33

标签: python python-3.7 tabulate

我想在终端上打印一张表,为此我使用了tabulate包,但是我有多余的返回车'\ n'。如何删除它们?

import pandas as pd
from tabulate import tabulate
df = pd.DataFrame({'schools' : ['Harvard', 'MIT', 'UCal', 'Cornell'],
                   'Faculty' : ['CS', 'Psychology', 'Biology', 'BioInformatics']})
print(tabulate(df,headers='keys',tablefmt='psql'))

结果

('+----+-----------+----------------+\n'
 '|    | schools   | Faculty        |\n'
 '|----+-----------+----------------|\n'
 '|  0 | Harvard   | CS             |\n'
 '|  1 | MIT       | Psychology     |\n'
 '|  2 | UCal      | Biology        |\n'
 '|  3 | Cornell   | BioInformatics |\n'
 '+----+-----------+----------------+')

1 个答案:

答案 0 :(得分:0)

看起来您实际上并不是在打印字符串,而是其他包含字符串的东西。在我的终端中,如果我使用您的代码,它将起作用:

jvaubien@ml18-pc03 ~/Downloads> python3 test.py
+----+----------------+-----------+
|    | Faculty        | schools   |
|----+----------------+-----------|
|  0 | CS             | Harvard   |
|  1 | Psychology     | MIT       |
|  2 | Biology        | UCal      |
|  3 | BioInformatics | Cornell   |
+----+----------------+-----------+

使用test.py包含您的代码示例。

但如果我这样做:

import pandas as pd
from tabulate import tabulate
df = pd.DataFrame({'schools' : ['Harvard', 'MIT', 'UCal', 'Cornell'],
                   'Faculty' : ['CS', 'Psychology', 'Biology', 'BioInformatics']})
x = tabulate(df, headers='keys', tablefmt='psql')
print((x,))

得到与您相同的结果,带有括号和\ n。

确定要打印字符串而不是其他内容吗?您会在字符串周围有括号,如果仅打印字符串,则不应在此处。