①while循环的表达式是循环进行的条件,用作循环条件的表达式中一般至少包括一个能够改变表达式的变量,这个变量称为循环变量
②当表达式的值为真(非零)(非空)时,执行循环体;为假(0)时,则循环结束
不为0,不为false,不为空(列表等)
所以有些表达式省略了,如下,比如只要为真或者不为空,就继续执行,为false或者列表空了,就自动结束循环。
while 列表: #(省略了 列表 != 空)
while true:
………………
---------------------------------------------------------------------------------------
使用标志 :
active设置为true,让程序最初处于活动状态,
示例:
current_number = 0
current = True
while current :
current_number += 1
print(current_number)
if current_number % 4 == 0 :
current = False #结束循环标志
执行结果:
1
2
3
4
-------------------------------------------------------------------------
在列表之间移动元素
示例:
un_confirmed_users = ['沈巍伟','袁凌','胡歌','成龙'] #待验证
confirmed_users = [ ] #通过验证
print(un_confirmed_users)
print(confirmed_users)
while un_confirmed_users : #while循环不断的运行,直到列表变为空
current_users = un_confirmed_users.pop()
print(current_users)
confirmed_users.append(current_users)
print(un_confirmed_users) #未通过验证
print(confirmed_users) #通过验证
执行结果:
['沈巍伟', '袁凌', '胡歌', '成龙']
[]
成龙
胡歌
袁凌
沈巍伟
[]
['成龙', '胡歌', '袁凌', '沈巍伟']
----------------------------------------------------------------------
示例:
def get_formatted_name(first_name,last_name,middle_name = ''):
"""返回整洁的姓名"""
if middle_name : #此处表示中间不为空的话
full_name = first_name + ' '+ middle_name + ' ' + last_name
else :
full_name = first_name + ' ' + last_name
return full_name
musician = get_formatted_name('wei','wei','shen')
print(musician)
musician = get_formatted_name('ling','yuan')
print(musician)
执行结果:
wei shen wei
ling yuan
-----------------------------------------------------------------------------------
示例:
def get_formatted_name(first_name,last_name) :
"""返回整洁的姓名"""
full_name = first_name+' '+last_name
return full_name
while True :
print('\n请输入您的姓名; ')
print("输入'q'退出")
f_name = input("first_name : ")
if f_name == 'q' :
break
l_name = input('last_name : ')
if l_name == 'q' :
break
formatted_name = get_formatted_name(f_name,l_name)
print("您好,全名是: "+formatted_name)
执行结果:
请输入您的姓名;
输入'q'退出
first_name : wei
last_name : shen
您好,全名是: wei shen
请输入您的姓名;
输入'q'退出
first_name : q