MyPython-->基础篇-->输入与while循环

咱们须要用户传入值,并使用这个值。咱们就可使用input()这个函数,能够打印input()括号内的内容,并等待用户输入,并在用户输入回车后继续运行。python

当咱们使用input()函数时,咱们都应指定清晰而易明白的提示,准确指出但愿用户的输入app

name = input('please enter  you name \n')
print('welcome %s'%name)
age = input('please enter your age:')
print('%s 年龄 %s'%(name,age))

 当input()内的字符串过长超过一行时为了方便代码阅读,咱们能够将字符串定义到变量内。dom

welcome = '''
1.for the lichking
2.for the freedom
'''
input(welcome)

while 循环简介函数

for循环用于针对集合中的每一个元素都一个代码块,而while循环不断的运行,直到指定的条件不知足为止。测试

可使用while循环来数数网站

1 count_num = 1
2 while count_num<6:
3     print(count_num)
4     count_num+=1

只要知足while后面的表达式,都执行循环内的代码,不知足结束spa

让用户选择合适退出code

message = input('enter q exit')
while message !='q':
    message = input('enter q exit')

先让用户输入,并提示输入q结束。当输入q的时候不走循环,输入其余的时候进入循环,直到输入qblog

1 welcome = 'welcome to notjoke,enter q exit:\n'
2 get_str = ''
3 while get_str !='q':
4     get_str = input(welcome)
5     if get_str != 'q':
6         print(get_str)

对代码进行改进,将用户输入的所有输出出来,直到用户输入q,q不会打印游戏

使用标志

在咱们日常使用过程当中,有不少状况致使程序中止运行,怎么办呢

好比:游戏中,生命值没了,守护的基地没了都会让游戏结束,若是在一个while语句中检查全部这些条件,将既复杂有困难

所以咱们能够定义一个变量,用于判断整个程序是否处于活动状态。这个变量称之为标志,充当了程序的交通讯号灯。

咱们能够对以前的代码进行修改

1 welcome = 'welcome to notjoke,enter q exit:\n'
2 active = 1
3 get_str = ''
4 while active:
5     get_str = input(welcome)
6     if get_str != 'q':
7         print(get_str)
8     else:
9         active = 0

固然这里也能够用True和False,这里须要判断active的值,默认为true,直到输入q后,将active的值变为0,条件判断不经过跳出循环

我么将active设置成了true,让程序最初处于得到状态,这样简化了while,由于不须要再作任何比较,相关的逻辑由程序其余部分来执行

 

break

要当即退出while循环,再也不容许代码中余下的代码,也无论测试结果如何可以使用break语句。break用于控制程序流程,可以使用他来控制哪些代码将执行,哪些不执行,从而让程序按你的要求执行代码。

仍是上个例子咱们可让用户输入q时,break

while 1:
    message = input('enter q exit')
    if message =='q':
        break
    else:
        print(message)

死循环直到用户输入q时,break会打断跳出循环,任何循环中均可以使用break,好比可用break来退出遍历列表或字典

 

continue

要返回循环开头,并根据条件测试结果决定是否继续执行循环,可以使用continue语句 好比

for x in range(1,11):
    if x%2 == 0:
        continue
    print(x)
x = 0
while x<11:
    x+=1
    if x%2 == 0:
        continue
    print(x)

若是能整除2,跳回循环那,不能的话打印出来

 

避免无限循环

for循环是一种遍历列表的有效方式,但在for循环中不该该修改列表不然将致使python难以追踪其中的元素。要在遍历列表的同时进行修改,可以使用while循环。经过将while循环同列表和字典结合起来使用,可收集和存储并组织大量输入,供之后查看和显示

假设一个列表,其中包含新注册但还未验证的网站用户。验证这些用户后,如何将他们移动到另外一个已验证用户列表中呢 ?

1 wyz_list = ['cc','yy','sc']
2 yz_list = []
3 while wyz_list:
4     yz_name = wyz_list.pop()
5     print('%s 验证成功'%yz_name)
6     yz_list.append(yz_name)
7 for x in yz_list:
8     print(x)

经过while循环删除列表内指定值的所有元素

咱们能够经过remove()方法删除指定元素,可是remove()一次只能删除一个元素,删除全部的能够用while对列表判断直到列表内没有 指定值

lc  = [1,1,2,3,1]
while 1 in lc:
    lc.remove(1)
print(lc)

先判断列表中是否包含指定值,若是包含执行循环内语句,删除后再检查是否在列表内,在继续循环直到列表内没有指定值的元素

 

使用用户输入来填充字典

1 active = 1
2 responses ={}
3 while active:
4     name = input('enter your name')
5     job = input('enter your job')
6     responses[name] = job
7     choose = input('enter anything input,enter no exit')
8     if  choose == 'no':
9         active = 0

active标志

练习

建立一个名为sandwich_orders的列表,在其中包含三明治的名字,再建立一个finished_sandwiches。遍历第一个个列表,并打印  i made your tuna sandwich ,并将它转移到第二个列表。都作完后将第二个列表打印

1 sandwich_orders = ['ss','nn','aa','kk','ee']
2 finished_sandwiches =[]
3 while sandwich_orders:
4     sandwich = sandwich_orders.pop(0)
5     finished_sandwiches.append(sandwich)
6     print('%s make over '%sandwich)
7 print(finished_sandwiches)

while 内判断列表是否空,每次都删除列表第一个值,删完结束打印第二个列表

相关文章
相关标签/搜索