打印语法错误,python 2.7.6

打印语法错误,python 2.7.6,python,python-2.7,Python,Python 2.7,写了一些代码,这个语法错误不断发生,但我无法解决它。由于只希望在启用“详细”选项时打印,我已包含了与错误行相关的所有代码 from __future__ import print_function print = print_function parser.add_argument("-v", "--verbose", action="store_true",help="Help option" verboseprint = print if verbose else lambda *a, *

写了一些代码,这个语法错误不断发生,但我无法解决它。由于只希望在启用“详细”选项时打印,我已包含了与错误行相关的所有代码

from __future__ import print_function
print = print_function
parser.add_argument("-v", "--verbose", action="store_true",help="Help option"
verboseprint = print  if verbose else lambda *a, **k: None 

                if line2_rev:
                    verboseprint "Line2 has now been reversed"

    verboseprint " Line2 has now been reversed"
                                              ^
SyntaxError: invalid syntax

我尝试改为使用“”并更改其中的字符串,但发生了相同的错误。有什么想法吗?

当您从“未来导入打印”函数运行
时,
print()
是一个函数,而不是一个语句。您也不能将
verboseprint
用作语句

将其用作函数:

from __future__ import print_function

parser.add_argument("-v", "--verbose", action="store_true",help="Help option"
verboseprint = print  if verbose else lambda *a, **k: None 

if line2_rev:
    verboseprint("Line2 has now been reversed")
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
导入改变了编译器的工作方式;将从该特定模块的语言中删除
print
关键字,而Python 2中已有的内置
print()
函数将变为可用。因此,不是:

print "This is printed"
您可以使用:

print("This is printed")
但是在你的代码中你定义了一个新的函数,它的工作原理是一样的


您不需要在代码中分配
print=print\u函数

当您执行
import print\u函数
时,您不使用名为
print\u函数
的东西,而是改为使用Python3语法而不是print关键字语法

在Python2中,您通常会说:

print 'something', 'other',
您可以使用
import from\uuuuuu future\uuuuuu导入打印\u功能

print('Something', 'other', end='')