python2和python3中range的区别

参考自 python2和python3中的range区别 - CSDN博客 http://blog.csdn.net/xiexingshishu/article/details/48581379

python2中的range返回的是一个列表

python3中的range返回的是一个迭代值

for i in range(1,10)在python2和python3中都可以使用,但是要生成1-10的列表,就需要用list(range(1,10))

输出abcde的子序列,如果用python3

s = 'abcde'  
i = -1  
for i in [None] + range(-1, -len(s), -1):  
    print(s[:i])  

报错,需改为

s = 'abcde'  
i = -1  
for i in [None] + list(range(-1, -len(s), -1)):  
    print(s[:i])  

输出:

  1. abcde  
  2. abcd  
  3. abc  
  4. ab  
原文地址:https://www.cnblogs.com/laumians-notes/p/8279845.html