6.python的input函数与while循环

1. input()函数

input()函数可以在括号中写入提示,用户根据提示输入信息,并且将信息作为一个字符串,保存在变量中。

输入:

prompt='If you tell us who you are, we can personalize the messages you see.'
prompt+='\nWhat is your first name?  '  #prompt第二种方法

first_name=input(prompt)
last_name=input('What is your last name?  ')    #prompt第一种方法

print('\nhello, '+first_name+' '+last_name+'!')

输出:

c:\py>input
If you tell us who you are, we can personalize the messages you see.
What is your first name?  tao
What is your last name?  ming

hello, tao ming!

2. int()函数

如果你要用户输入数字,并且要将其作为整型变量用来进行数字方面的处理,需要使用int()函数。

输入:

height=input('how old are you?')
height=int(height)

if height>=18:
    print('you are old enogh')
else:
    print('you are too young')

输出:

c:\py>int_input
how old are you?16
you are too young

c:\py>int_input
how old are you?19
you are old enogh

3. while循环

当while后面的值为true时,执行while下面缩进的语句。

输入:

prompt='\nTell me something,and I will repeat it back to you:'
prompt+="\nenter 'quit' to end the program.\n"

message=""  #一开始为空字符串,但它依然为字符串,这样才能比较
while message != 'quit':
    message = input(prompt)
    
    if message != 'quit':
        print(message)

输出:

c:\py>while

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
we
we

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
quit

4. 用Flag控制while循环

while Falg:那我们可以通过控制Flag的True或者Flase来控制程序流。

输入:

prompt='\nTell me something,and I will repeat it back to you:'
prompt+="\nenter 'quit' to end the program.\n"

active = True

while active:
    message = input(prompt)  
    if message == 'quit':
        active = False
    else:
        print(message)

输出:

c:\py>flag

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
else
else

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
quit

c:\py>

5. break语句

若在循环中遇到break语句,程序跳过剩余的循环语句,直接跳出循环。

输入:

prompt='\nTell me something,and I will repeat it back to you:'
prompt+="\nenter 'quit' to end the program.\n"

#和上一个程序比,因为有了break语句,判别是否跳出循环的任务就交给了if
while True:     
    message = input(prompt)  
    if message == 'quit':
        break
    else:
        print(message)

输出:

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
me
me

Tell me something,and I will repeat it back to you:
enter 'quit' to end the program.
quit

c:\py>

6. continue语句

在循环中,continue语句会跳过剩余的循环语句,回到循环的开头,重新开始循环。即跳过本次剩余的循环,直接开始下一个循环。

输入:

current_number=0
while current_number <= 10:
    current_number+=1
    if current_number%2==0:
        continue
    print(current_number)

输出:

c:\py>continue_
1
3
5
7
9
11

程序中,while循环的条件是current_number<=10,但当current_number=10时,符合条件,while又进行一次循环,使current_number+1后变成11输出,在检测发现11不再<=10,所以跳出循环。

7. 用while循环处理列表

(1) 将一个列表元素移到另一个列表

输入:

unconfirmed_users=['alice','kitty','john']
confirmed_users=[]

while unconfirmed_users:
    current_user=unconfirmed_users.pop()
    
    print("verifying user: "+current_user.title())
    confirmed_users.append(current_user)

print('\nthe following users are confirmed: ')
for confirmed_user in confirmed_users:
    print(confirmed_user.title())   #方法一定要带()

输出:

c:\py>while_pop_append
verifying user: John
verifying user: Kitty
verifying user: Alice

the following users are confirmed:
John
Kitty
Alice

(2) 用while循环和.renmove()方法移除所有指定元素

.remove()方法只能移除移除第一个指定的元素,加上while循环,可以移除所有的指定元素。

输入:

pets=['dog','cat','goldfish','cat','rabbit','cat']
print(pets)

while 'cat' in pets:
    pets.remove('cat')
    
print(pets)

输出:

c:\py>while_remove
['dog', 'cat', 'goldfish', 'cat', 'rabbit', 'cat']
['dog', 'goldfish', 'rabbit']

(3) 用while循环填充字典

输入:

prompt_1='\nwho are you?'
prompt_2='what food do you like best?'

responses={}

while True:
    name=input(prompt_1)
    food=input(prompt_2)
    
    responses[name]=food    #添加键值对只需一条语句即可
    answer=input('would you like to let another person respond?(yes/no)')
    if answer=='no':
        break
print('\n this is poll results\n')
print(responses)

输出:

c:\py>while_dic

who are you?mike
what food do you like best?pear
would you like to let another person respond?(yes/no)yes

who are you?jack
what food do you like best?apple
would you like to let another person respond?(yes/no)yes

who are you?john
what food do you like best?strawberry
would you like to let another person respond?(yes/no)no

 this is poll results

{'mike': 'pear', 'jack': 'apple', 'john': 'strawberry'}
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,146评论 0 3
  • 奔袭了好几百里 穿过黎明 初升的半月和渐落的星辰 穿过 我一直惧怕的黑暗 终于在科技制造的光明里 与她 我生命...
    阿莲0609阅读 192评论 0 3
  • 名人自杀,在这个时代已不是什么新鲜事了,但是,每一次听到还是感到有点儿震惊。 其实吧,震惊的是自杀背后的那种根深蒂...
    枯叶萧瑟阅读 962评论 10 29
  • 今天和娅琪团队的家人一起到福利院慰问孤寡老人,送上我们得爱心霜,能够帮助到她们,心里满满的幸福,最美莫过于心美,爱...
    宋东辉完颜古方阅读 197评论 0 3
  • 立春弄花 文/洪燕 今日立春阳光像孔雀一样开屏 我把花草一一搬于阳台日照 花草说 冬季已熬过 俺将无比...
    __洪燕阅读 149评论 0 2