python入门基础——if、while、for循环语句

目录

      • 1.if语句
        • 1.2 if基本语句
        • 1.3 if-elif嵌套
        • 1.4 案例:猜拳游戏
        • 1.5 案例: 成绩等级评定
      • 2.while循环语句
        • 2.2 while循环嵌套
        • 2.3 break 跳出循环
        • 2.4 break continue示例
      • 3.for 循环语句
        • 3.1 遍历变量
        • 3.2 for循环中break continue 的应用

1.if语句

if语句的基本形式:

if 条件表达式:
执行语句1
else:
执行语句2

1.2 if基本语句


j=8
if j>15:
 print('Today is February 22')
else:
 print('I want to leave home')

I='WX'
if I=='WF':
 print('I Will go to school on the last day of the month')
elif I=='WW':
 print('I am working in the hospital now')
else:
 print('I am learn programming at home')

运行结果:

I want to leave home
I am learn programming at home

1.3 if-elif嵌套

实例:比较输入的三个数的大小

x= float (input('请输入第一个数:'))  # //input() 函数获取到的永远都是字符串,要根据实际需要将input()获取到的输入信息经适当的转换后再赋予变量
y= int (input('请输入第二个数:'))
z= int (input('请输入第三个数:'))

if x > y:
    if x > z:
        print ('最大的数是:%s'%x)    # %s要和x的数据类型对应
    else:
        print ('最大的数是:%d'%z)
elif y > z:
    print ('最大的数是:%d'%y)
else:
    print('最大的数是:%d'%z)

运行结果:(随便输入三个值,注意x y z的数据类型)

请输入第一个数:8.5
请输入第二个数:8
请输入第三个数:2
最大的数是:8.5

1.4 案例:猜拳游戏

import random
user =input('请输入石头、剪刀、布:')  #接收用户输入的内容
cont =['石头','剪刀','布']  #生成列表  #初始化数据
num = random.randint(0,3)  #用于生成(0,3)内的整数,包左不包右

if user =='石头':
    if cont[num] =='石头':          ##疑问1:cont[num]????:cont[0]='石头';cont[1]='剪刀';coun[2]='布'
        print('用户输入的是%s,电脑输入的是%s,平局'%(user,cont[num]))
    elif cont[num] =='剪刀':
        print('用户输入的是%s,电脑输入的是%s,你赢了' % (user, cont[num]))
    elif cont[num] =='布':
        print('用户输入的是%s,电脑输入的是%s,你输了' % (user, cont[num]))
elif user =='剪刀':
    if cont[num] == '石头':
        print('用户输入的是%s,电脑输入的是%s,你输了' % (user, cont[num]))
    elif cont[num] == '剪刀':
        print('用户输入的是%s,电脑输入的是%s,平局' % (user, cont[num]))
    elif cont[num] == '布':
        print('用户输入的是%s,电脑输入的是%s,你赢了' % (user, cont[num]))
elif user =='布':
    if cont[num] == '石头':
        print('用户输入的是%s,电脑输入的是%s,你赢了' % (user, cont[num]))
    elif cont[num] == '剪刀':
        print('用户输入的是%s,电脑输入的是%s,你输了' % (user, cont[num]))
    elif cont[num] == '布':
        print('用户输入的是%s,电脑输入的是%s,平局' % (user, cont[num]))
else:
    print('您的输入有误')

运行结果1:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
请输入石头、剪刀、布:布
用户输入的是布,电脑输入的是石头,你赢了

运行结果2:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
请输入石头、剪刀、布:石头
用户输入的是石头,电脑输入的是剪刀,你赢了

运行结果3:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
请输入石头、剪刀、布:剪刀
用户输入的是剪刀,电脑输入的是剪刀,平局

以上是我随机给定了3个不同输入后的运行结果.

1.5 案例: 成绩等级评定

i=int(input('请输入你的分数'))  ##// 一定要把接收到的数据类型进行转换后,再进行赋值!//
if i >= 90:
    print('你的成绩是A')
elif i < 90:
    if i < 60:
        print ('你的成绩C')
    else:
        print ('你的成绩是B')

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
请输入你的分数:89
你的成绩是B

2.while循环语句

语句格式:
while 条件表达式: #当条件为Ture时进入循环
要执行的代码块 #执行完里面的代码块则回到条件表达式 进行条件循环

a = 0  #初始化变量
while a < 3:
    print('I do not like the teacher style of class')
    a+=1
else:
    print('me,too')

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
I do not like the teacher style of class
I do not like the teacher style of class
I do not like the teacher style of class
me,too

2.2 while循环嵌套

'''
while循环嵌套:
while 条件1:
     代码块1
     while 条件2:
          代码块2
'''
i = 0
while i < 6:
    j = 0
    while j < i:  #控制个数
        print ('*',end =' ')  ##end ='' :表示print的结束符为空格  因为print默认为换行
        j+=1
    i+=1
    print('')    #每行输出完毕后输出一个换行 print默认是换行结尾

2.3 break 跳出循环

a=22
while a < 30:
    if a == 25:
        print('终于开学了')
        break
    print('今天还没开学呢')
    a+=1

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
今天还没开学呢
今天还没开学呢
今天还没开学呢
终于开学了

2.4 break continue示例

while True:  #给个条件 为True
    a = input('你是否要退出程序(y/n):')
    print(a)
    if a =='y': #当用户输入'y'时,进入if,接着break,跳出循环
        break

  # continue   :跳出当前循环,直接重新开始下一次循环
a = 0
while a < 5:
    a += 1                                          
    print ('开始')
    print ('接着')
    if a == 3 :
        print ('累了,重新开始')
        print (' ')
        continue
    print ('结束')
    print (' ')

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
你是否要退出程序(y/n):y
y
开始
接着
结束
开始
接着
结束
开始
接着
累了,重新开始
开始
接着
结束
开始
接着
结束

通过这个例子可以看出两者之间的区别:
break: 直接跳出循环,执行循环外的语句。
continue:跳出循环,继续执行下一次的循环

3.for 循环语句

3.1 遍历变量

list1=['acj','casc','asda','ad','add']  #建立列表
for i in list1:  # 遍历list1 这个列表,将列表中的元素依次复制给 变量i
    print(i)     #输出所遍历到的元素i  直到将所有的元素遍历完毕,然后停止遍历

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
acj
casc
asda
ad
add

我们用之前的while语句也来遍历变量:

list1=['acj','casc','asda','ad','add']
i=0
while i < len(list1):
    print(list1 [i])
    i+=1

会发现,for语句比较简洁,用的比较多。

当用 for 循环 遍历字典时

favorite_places = {'wx':['黄山','三亚','苏州'],'zhw':['西藏','西宁','张家界']}
name = input ('请输入姓名:')
for i in favorite_places:  # 用for循环遍历字典时,只遍历字典中的key!!!
    if name == i:          # 遍历字典获取key 然后通过key和输入的值判断
        print(favorite_places[name])   

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
请输入姓名:wx
[‘黄山’, ‘三亚’, ‘苏州’]

3.2 for循环中break continue 的应用

1)break

t1=['acj','casc','asda','ad','add']
for i in list1:
    if i == 'asda':
        break   #终止循环
    print(i)

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
acj
casc

2)continue

list1=['acj','casc','asda','ad','add']
for i in list1:
    if i == 'asda':
        continue #跳出if循环,即本次循环不再执行print()
    print(i)

运行结果:

D:\anaconda\python.exe D:/pythonb/if-while循环/four-if.py
acj
casc
ad
add

(by dxz 2020 04 15 12:28)

你可能感兴趣的:(python入门基础)