11
回答
python一个最简单Print错误
终于搞明白,存储TCO原来是这样算的>>>   

#!/usr/bin/python
# Filename: while.py

>>for i in range(12,23):

        print i

    print "Done"

 

这句怎么在最后一个print ,报错  SyntaxError: invalid syntax

举报
jackal
发帖于6年前 11回/3K+阅
共有11个答案 最后回答: 4年前

刚刚我自己跑了一下 这个没有问题的~

是不是你的版本问题呀。print函数 版本不同 表达式不一样的

我也刚刚开始学python 加油哦

引用来自“源小月”的答案

刚刚我自己跑了一下 这个没有问题的~

是不是你的版本问题呀。print函数 版本不同 表达式不一样的

我也刚刚开始学python 加油哦

你是哪个版本

去掉最后一个print就没错了,

简明python教程里面 第六章 while语句 这个例题,最后一个print 'Done' 也会出错,去掉就没事了

#!/usr/bin/python
# Filename: while.py


number = 23
running = True

while running:
    guess = int(raw_input('Enter an integer : '))

    if guess == number:
        print 'Congratulations, you guessed it.'
        running = False # this causes the while loop to stop
    elif guess < number:
        print 'No, it is a little higher than that'
    else:
        print 'No, it is a little lower than that'
else:
    print 'The while loop is over.'
    # Do anything else you want to do here

print 'Done'

 

>>for i in range(12,23):  #1
     print i              #2
print "Done"              #3

楼主是在自带的解析器或者命令行下面敲的代码吧

这里解析器只会解析一个完整的语句,如果超过肯定会报错的

如果想在loop结束之后做提示可以这样写

 

for i in range(10):
    print(i)
else:
    print('End')

引用来自“用户名已存在”的答案

 

>>for i in range(12,23):  #1
     print i              #2
print "Done"              #3

楼主是在自带的解析器或者命令行下面敲的代码吧

这里解析器只会解析一个完整的语句,如果超过肯定会报错的

如果想在loop结束之后做提示可以这样写

 

for i in range(10):
    print(i)
else:
    print('End')

谢谢哥们

楼主是3.×以上版本对吧?所以要用print() 这样的。3.×已经从语句提升为函数的形式。 2.7的版本才用 print ""

>>> for i in range(1, 10):
...     print i
... else:
...     print "Done"
...

不用加引号也可以的。

只是在命令行下,直接输入print "Done"时,格式会有问题

PS:@用户名已存在 说的很对。。。顶

--- 共有 1 条评论 ---
puras忘了说了,我用的是python 2.7.2 6年前 回复
顶部