首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的括号

奇怪的括号
EN

Stack Overflow用户
提问于 2015-10-14 10:19:54
回答 2查看 54关注 0票数 0

我刚刚使用pydev for eclipse运行python2.7作为编程入门课程(需要python3.x),所以我使用了带括号的更新的print语句

我遇到的问题是,在最后一个while循环之后,print()语句包含括号。

print('Number of flushes: ', flush)

返回

代码语言:javascript
复制
('Number of flushes: ', 0)

奇怪的是,在程序的早期,在while循环结束之前,print()语句完全按照预期工作。怎么一回事?

EN

回答 2

Stack Overflow用户

发布于 2015-10-14 10:24:51

在Python2.x中,print是一个语句,而不是一个函数,所以这里:

代码语言:javascript
复制
print('Number of flushes: ', flush)

是有效语法,但括号被解释为元组:

代码语言:javascript
复制
>>> print 3, 4
3 4
>>> print (3, 4)
(3, 4)
票数 4
EN

Stack Overflow用户

发布于 2015-10-14 10:26:55

在Python2.x中,print是一条语句,而不是函数。当只有一个参数时,可以用括号将参数括起来,但当有两个或更多参数时,参数将被视为一个元组。解决这个问题的一种方法是在代码的顶部插入语句from __future__ import print_function。这会将print语句转换为一个函数,并在打印两个或更多项时给出预期的行为。但是,您必须将所有的print语句转换为函数形式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33115521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档