欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python学习笔记(5)循环语句while,for的使用

程序员文章站 2022-03-16 08:26:49
...

python While循环语句

python编程中的While语句用于循环执行程序,即在某条件下,执行某段程序,常常与if…else,for语句一起连用,下面是Whlie循环的基本形式:

while 判断条件(condition):
    执行语句(statements)……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假 false 时,循环结束,执行过程如下图(相信学过高中数学必修三的同学是非常熟悉的):
python学习笔记(5)循环语句while,for的使用
实例如下:

a=1
while a<10:
 print(a)
 a+=2

输出结果如下(依次输出1,35,79):
13579

python for 循环语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串,实例代码如下:

for letter in 'Python':     # 第一个实例
   print ('当前字母 :', letter)
 
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        # 第二个实例
   print ('当前水果 :', fruit)
 

>>>输出结果如下:
当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n
当前水果 : banana
当前水果 : apple
当前水果 : mango

for循环经常与range()函数连用,代码如下:

>>>range用法
>>>range(10)        # 从 0 开始到 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)     # 从 1 开始到 11
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)  # 步长为 5
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)  # 步长为 3
[0, 3, 6, 9]
>>> range(0, -10, -1) # 负数
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]

>>>forrange连用:

for i in range(1,5):
  print(i)
>1
>2
>3
>4
再如:
>>>x = 'runoob'
>>> for i in range(len(x)) :
...     print(x[i])
... 
r
u
n
o
o
b
>>>

While 经常与continue,break,pass连用,continue 用于跳过该次循环,break 则是用于退出循环,具体用法如下:

# continue 和 break 用法
 
i = 1
while i < 10:   
    i += 1
    if i%2 > 0:     # 非双数时跳过输出
        continue
    print i         # 输出双数2、4、6、8、10
 
n= 1
while 1:            # 循环条件为1必定成立
    print (i)         # 输出1~10
    i += 1
    if i > 10:     # 当i大于10时跳出循环
        break

>>>pass的用法:Python pass 是空语句,是为了保持程序结构的完整性。
>>>pass 不做任何事情,一般用做占位语句。
比如后面会说到的定义函数def:
def sum():
  pass      #代表这个函数没有意义,pass只是占了个位置,让这个函数不至于报错。        

无限循环

如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:

sum=1
while sum ==1:      #该条件即判断永远为True
  print"无限输出">>>输出结果为:打印无数次字符串"无限输出"  

循环使用 else 语句

在 python 中,while … else 在循环条件为 false 时执行 else 语句块:

count = 0
while count < 5:
   print count, " is  less than 5"
   count = count + 1
else:
   print count, " is not less than 5"
>>>输出结果为:
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5   
   

综合使用Whlie与for语句,代码如下:

numbers=[12.37,5,42,8,3]
sum=[]    #定义空列表,后面用判断条件append进行数字输入
odd=[]
whlie len(numbers)>0:
  number=numbers.pop()
  if (number%2 ==0):
   sum.appen(number)
  else:
   odd.append(number) 

>>>输出结果如下:
sum=[8,42,,12]
odd=[37,5,3]