python2.7rise语法中打印的星号

2024-05-29 05:10:37 发布

您现在位置:Python中文网/ 问答频道 /正文

在Fluent Python一书中,我在listcomp中找到了一些代码_速度.py,它在python3.5下运行良好,但在python2.7下会出现语法错误。代码是:

def clock(label, cmd):
    res = timeit.repeat(cmd, setup=SETUP, number=TIMES)
    print(label, *('{:.3f}'.format(x) for x in res))

错误是:

^{pr2}$

这对我来说没有意义,因为打印中的星号是解包的,解包是对打印版的支持,比如 print(*("1","2")) 效果很好。在

同样的代码在python3.5中运行良好。在

这本书没有说明python的环境。在


Tags: 代码pycmddefsetupresfluent速度
1条回答
网友
1楼 · 发布于 2024-05-29 05:10:37

print在Python 2和Python 3之间更改。在python2中,它是一个不需要括号的特殊语句。在Python3中,它是一个需要括号的函数,但也可以做更多的事情——包括获取参数,如您在这里所示。在

您可以在python2中使用python3样式print,方法是

from __future__ import print_function

在你档案的最上面。在

相关问题 更多 >

    热门问题