假设我们有一个表示表(以列表为准)的Python结构。
是否有一种优雅的方法可以将该结构以编程方式复制到剪贴板中,以便可以将其正确粘贴为表格,例如在Microsoft Word或Excel中?我最好是在寻找一种便携式解决方案,否则,不妨针对MacOS,Linux和Windows的特定解决方案。
答案 0 :(得分:1)
要将列表列表形式的表复制到剪贴板,请先通过将值与制表符连接在一起,并将行与换行符连接起来,将其转换为字符串:
table = [
list(range(10)),
list(range(11, 21)),
list(range(21, 31)),
]
result = '\n'.join(['\t'.join(map(str, row)) for row in table])
print(result)
结果是:
0 1 2 3 4 5 6 7 8 9
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
有几种方法可以将其复制到剪贴板。这是基于this answer使用tkinter
的跨平台方法:
from tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_clear()
r.clipboard_append(result)
r.update()
r.destroy()