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]

 

 

相关文章:

  • 2022-12-23
  • 2021-12-09
  • 2021-09-08
  • 2022-12-23
  • 2022-12-23
  • 2021-07-31
  • 2021-10-07
  • 2022-12-23
猜你喜欢
  • 2021-09-08
  • 2022-02-07
  • 2022-02-07
  • 2021-07-25
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案