如何在CLI中打印DataFrame时应用边框?

时间:2017-11-05 15:09:22

标签: python pandas

我想将DataFrame单元格与│和─。

分开

这是目前的代码

game_board = [
    [" ", "X", " ", "X", " ", "X", " ", "X"],
    ["X", " ", "X", " ", "X", " ", "X", " "],
    [" ", "X", " ", "X", " ", "X", " ", "X"],
    [" ", " ", " ", " ", " ", " ", " ", " "],
    [" ", " ", " ", " ", " ", " ", " ", " "],
    ["O", " ", "O", " ", "O", " ", "O", " "],
    [" ", "O", " ", "O", " ", "O", " ", "O"],
    ["O", " ", "O", " ", "O", " ", "O", " "]
]
print DataFrame(game_board)

这是输出:
enter image description here

如何在CLI中为DataFrame添加边框?

1 个答案:

答案 0 :(得分:4)

使用tabulate包:

pip install tabulate

使用tabulate.tabulate致电tablefmt='grid',以获得框架元素周围的整齐方块。

import tabulate

df = pd.DataFrame(game_board)
print(tabulate.tabulate(df, tablefmt='grid', showindex=False))

+---+---+---+---+---+---+---+---+
|   | X |   | X |   | X |   | X |
+---+---+---+---+---+---+---+---+
| X |   | X |   | X |   | X |   |
+---+---+---+---+---+---+---+---+
|   | X |   | X |   | X |   | X |
+---+---+---+---+---+---+---+---+
|   |   |   |   |   |   |   |   |
+---+---+---+---+---+---+---+---+
|   |   |   |   |   |   |   |   |
+---+---+---+---+---+---+---+---+
| O |   | O |   | O |   | O |   |
+---+---+---+---+---+---+---+---+
|   | O |   | O |   | O |   | O |
+---+---+---+---+---+---+---+---+
| O |   | O |   | O |   | O |   |
+---+---+---+---+---+---+---+---+