3

有时当我使用打印功能时,输出中会出现括号和引号。我正在使用 Python 3.4 并在 Mac 上使用 Sublime Text 编写代码。

这是一个例子

输入:

a=2
print("a",a)

输出:

('a', 2)

我只想显示 a 和 2。

提前致谢!

4

3 回答 3

4

您似乎正在使用 Python 2。

a = 2
print("a %i" % a)

应该给你你正在寻找的结果。或者,使用较新的str.format()方法:

print("a {}".format(a))

在 Python 3 中,您的语句print("a",a)将按预期工作。在 Sublime 中检查您的构建系统,以确保您正在调用python3而不是python. 运行此代码以查看实际使用的版本:

import sys

print(sys.version)

要创建 Python 3 构建系统,请使用 JSON 语法和以下内容打开一个新文件:

{
    "cmd": ["python3", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python"
}

将文件另存为选择 时打开的文件夹Packages/User/Python3.sublime-build所在的位置。您现在可以选择并且假设在您的 中,您应该使用正确的版本进行构建。PackagesSublime Text -> Preferences -> Browse Packages...Tools -> Build System -> Python3python3PATH

如果构建失败并出现无法找到的错误python3,请打开终端并输入

which python3

查看它的安装位置。复制整个路径并将其放入构建系统中。例如,如果which python3返回/usr/local/bin/python3,那么文件"cmd"中的语句.sublime-build应该是:

"cmd": ["/usr/local/bin/python3", "-u", "$file"],
于 2015-01-23T18:44:39.493 回答
2

你确定你是在 Python 3 解释器上执行它吗?在 Python 2 中 print 是一个语句,所以它不需要括号

print ("a", 2) // parentheses are interpreted as a tuple constructor
>>> ('a', 2)

是相同的

print tuple(["a",2])
>>> ('a', 2)

或在 Python 3 中:

print( ("a",2) )
>>> ('a', 2)
于 2015-01-23T18:53:04.517 回答
0

我认为您使用的是python 2。在python 2中,您不需要括号,直接编写代码如下

print "a", a
于 2018-04-28T16:13:54.193 回答