for循环while循环

问题描述:

改变我不知道我怎么会改变代码的下面几行使用while循环,而不是一个for循环。for循环while循环

for num in range(10): 
print(num+1) 

目前,它打印出以下几点:

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 

谢谢!

+3

用一个计数器和一个条件。 – Maroun

+1

为什么你想要一个while循环而不是for循环? – depperm

start = 0 
while start != 10: 
    start = start + 1 
    print(start) 

希望这个hepls

+3

这可能有助于在这个特定的情况下,但它不会帮助OP在未来找出如何解决他们自己的* *的问题。 – Maroun

+0

谢谢!这很好用! –

以及..... while语句进行操作,直到满足特定条件,作为对一组给定的迭代操作。

你的情况,你想,直到NUM达到10打印东西,所以

while num <= 10 : 
    print num 
    num = num + 1 

会做

+0

*直到*或* while *? – doctorlove

+0

你应该指定'num'开始于'1'因为OP要打印1〜10 – duncan

for循环运行在一个迭代,而while循环运行在条件为真,所以你只需要考虑正确的条件。 这里,东西数到10都可以工作:具有相同的输出

>>> number = 0 
>>> while number < 10: 
... print(number + 1) 
... number += 1 
... 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 

number = 1 
while (number <=10): 
    print 'The number is:', number 
    number = number + 1 
+0

这也将打印'0'这可能不是从0想要 – doctorlove

+0

这版画 - 10 OP要求1 - 10 – duncan

+0

现在我编辑了我的答案。 Lols ..检查现在! –

编写的代码是不一样的重写代码做同样的事情。其他答案简单地做前者,所以这解决了后者:

numbers = range(10) 
while numbers: 
    numbers.pop(0) + 1 

原代码在不循环外存在一个列表上循环 - 它可以用比范围以外的东西的清单工作(10) ,但它不一定只是一个'+ 1'操作。

了while循环的条件语句,但是,需要为真为循环开始所以应该已经存在的列表。为了让真正的原代码的精神,我们使用范围()创建列表,并使用pop()方法来反复从中取出第一个元素。

这里的区别在于变量(数字)被使用,但在循环之后是空的,我们不依赖列表理解来迭代,但显式删除第一个元素,直到'数字'为空,导致错误的情况。