我想在终端上打印一张表格,为此我使用 tabulate 包,但我有额外的返回战车' '。我怎样才能删除它们?
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'
'+----+-----------+----------------+')
看起来您实际上并没有打印该字符串,而是打印了包含该字符串的其他内容。在我的终端中,如果我使用你的代码,它就可以工作:
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,))
我得到与你相同的结果,带有括号和 .
您确定打印的是字符串而不是其他内容吗?字符串两边有括号,如果您只打印字符串,则该括号不应该出现在此处。
您的代码没有错误。 可能与你的python版本或导入的模块有关。 我已经在我的终端和 google-colab 笔记本中尝试了你的代码,并获得了干净的输出。
您可以尝试创建新的虚拟环境并在新的虚拟环境中运行您的代码。