gpt4 book ai didi

python - 如何制作带有\t符号的表格?

转载 作者:行者123 更新时间:2023-12-01 02:32:02 28 4
gpt4 key购买 nike

现在,我正在研究“如何像计算机科学家一样思考”。我在Simple Tables 。本课是制作简单的表格。第一个示例在浏览器中运行良好,但是当我使用 Sublime 时,会打印\t 符号。它不会在浏览器中执行此操作。我什至将代码直接复制到 sublime 中。

这是我的代码:

print("n", '\t', "2**n")
print("---", '\t', "-----")

for x in range(13):
print(x, '\t', 2 ** x)

我的结果是:

('n', '\t', '2**n')
('---', '\t', '-----')
(0, '\t', 1)
(1, '\t', 2)
(2, '\t', 4)
(3, '\t', 8)
(4, '\t', 16)
(5, '\t', 32)
(6, '\t', 64)
(7, '\t', 128)
(8, '\t', 256)
(9, '\t', 512)
(10, '\t', 1024)
(11, '\t', 2048)
(12, '\t', 4096)

如何让括号和\t 符号消失。我知道括号不应该在那里,所以我对此感到困惑,并且我不知道如何摆脱\t 符号而不出现“意外字符”错误。

最佳答案

我认为您正在使用 Python 2 并打印元组。在文件顶部放置 from __future__ import print_function它看起来会如您所期望的那样。 更好的是,升级到 Python 3! Python 网站提供了适用于 Mac* 和 PC 的安装程序,并且大多数(也许是全部?)Linux 发行版的默认包管理器存储库中都有 Python 3。

要更详细地解释发生了什么,请查看 Python core developer's answers to another question 之一.

由于您运行的是 Python 2,其中 print 是一个语句,该语句只能看到一个参数:元组 (x, '\t', 2 ** x)print尝试调用 __str__在给定的所有对象上,但由于在本例中它只看到一个对象(元组),因此它只尝试调用 __str__关于这一点。自 tuple未定义__str__ , __repr__而是被调用。您可以在the source中看到元组调用 repr()元组中的所有项目。字符串 '\t' 的表示是 '\t' 。 (这有点影响了 Python 中 reprstr 之间的区别)。每当您使用from __future__ import print_function时,该函数将看到三个单独的参数,并尝试调用 __str__在他们每个人身上。这将按照您想要的方式打印出来。

对于这种特定情况,您需要确保参数之间不会插入空格,因此请输入关键字参数 sep='' :

print(x, '\t', 2**, sep='' )

*注意:在 Mac OS X 上,通常建议使用 Homebrew:http://docs.python-guide.org/en/latest/starting/install3/osx/

关于python - 如何制作带有\t符号的表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46699678/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com