python基础--list转换range()的打印结果

  for循环中常见的一个函数是range(),然而有时候直接打印range的时候,得到的结果却不是我们想要的,这个时候,可以用list列表来转换一下range的结果,让我们更清除的打印出range中的元素。

例如:

s=10
d=5
for i in range(s,s+d):
    s=s+1
    print(s)
    print(i)
    print(range(s, s + d, 1))
    print(list(range(s,s+d,1)))

运行结果:

11
10
range(11, 16)
[11, 12, 13, 14, 15]
12
11
range(12, 17)
[12, 13, 14, 15, 16]
13
12
range(13, 18)
[13, 14, 15, 16, 17]
14
13
range(14, 19)
[14, 15, 16, 17, 18]
15
14
range(15, 20)
[15, 16, 17, 18, 19]

这里可以明显的看出两个输出的不同结果,例如结果range(11, 16)和[11, 12, 13, 14, 15],在语句

print(range(s, s + d, 1))中,最后一个参数1是表示range中元素步进为1,如果写2的话,意思就是隔一个元素取一个,于是,修改代码:
s=10
d=5
for i in range(s,s+d):
    s=s+1
    print(s)
    print(i)
    print(range(s, s + d, 1))
    print(list(range(s,s+d,1)))
    print(list(range(s,s+d,2)))

运行结果:

11
10
range(11, 16)
[11, 12, 13, 14, 15]
[11, 13, 15]
12
11
range(12, 17)
[12, 13, 14, 15, 16]
[12, 14, 16]
13
12
range(13, 18)
[13, 14, 15, 16, 17]
[13, 15, 17]
14
13
range(14, 19)
[14, 15, 16, 17, 18]
[14, 16, 18]
15
14
range(15, 20)
[15, 16, 17, 18, 19]
[15, 17, 19]

 

 

posted @ 2018-03-27 17:22  utsuro  阅读(1605)  评论(0编辑  收藏  举报