1

我编写了以下脚本,它生成一个SyntaxError

#!/usr/bin/python
print "Enter the filename: "
filename = raw_input("> ")
print "Here is your file %r: ", % filename

txt = open(filename)
print txt.read()
txt.close()

这是错误:

  File "ex02.py", line 4
    print "Here is your file %r: ", % filename
                                    ^
SyntaxError: invalid syntax

我应该如何解决这个问题?

4

3 回答 3

3

那里不能有逗号。

print ("Here is your file %r: " % filename),
于 2012-04-09T05:38:56.383 回答
2

不需要昏迷,试试:

filename = raw_input("> ")
print "Here is your file %r: " % filename
于 2012-04-09T05:38:49.907 回答
1

麻烦就在这里:

print "Here is your file %r: ", % filename
                              ^

print找到一个逗号时,它将它用作参数分隔符,如下所示:

>>> print 1,2
1 2

在这种情况下,下一个参数必须是有效的,而序列% filename不是

你的意思无疑是:

print "Here is your file %r: " % filename

根据以下成绩单:

>>> filename = "whatever"

>>> print "file is %r", % filename
  File "<stdin>", line 1
    print "file is %r", % filename
                        ^
SyntaxError: invalid syntax

>>> print "file is %r" % filename
file is 'whatever'
于 2012-04-09T05:41:55.067 回答