Python range ()
似乎很奇怪。我想打印1到9之间的数字,因为我输入了以下代码
for i in range(1,10):
print i
有没有办法在range()
中提及开头和结尾数字。我应该使用任何其他可以为我这样做的功能。任何帮助将不胜感激。
答案 0 :(得分:0)
您假设range(1,10)
表示
10表示从0开始打印第10个数字。
在评论中。这不是range()
的工作原理。
range()
需要三个参数,2个必需参数和1个可选参数:
range(start, stop, step)
。 (further reading)
start
应该是您要开头的号码
stop
是 在 之前停止的数字
step
是您希望在start
和stop
之间行走的增量范围
例如range(1,10)
将包含1-9中的所有数字(注意:不包括10):[1, 2, 3, 4, 5, 6, 7, 8, 9]
range(0,10)
将包括0到上面,而range(1,11)
将包括10。
range(1,10,2)
会呈现[1, 3, 5, 7, 9]
至于你对“清洁”解决方案的渴望;这是一个主观问题。像[i for i in range(1,10)]
这样的列表理解,甚至是问题中的嵌套代码都是大多数人的标准。