python学习笔记(5)循环语句while,for的使用
程序员文章站
2022-03-16 08:26:49
...
python While循环语句
python编程中的While语句用于循环执行程序,即在某条件下,执行某段程序,常常与if…else,for语句一起连用,下面是Whlie循环的基本形式:
while 判断条件(condition):
执行语句(statements)……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假 false 时,循环结束,执行过程如下图(相信学过高中数学必修三的同学是非常熟悉的):
实例如下:
a=1
while a<10:
print(a)
a+=2
输出结果如下(依次输出1,3,5,7,9):
1,3,5,7,9
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)
[]
>>>for 与range连用:
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]