六、python条件/循环

一、if

1)if的表示

if  条件表达式1:

     (缩进)条件满足后要运行的代码

elif 条件表达式2:

     (缩进)代码2

elif 条件表达式3:

     (缩进)代码3

······

else:

     (缩进)剩下所有的情况要运行的代码

注意:一个缩进标准是4个空格,4个空格并不等于1个Tab(要使用空格缩进,不要使用Tab缩进)

           在一个if表达式中,if····elif····else····,如果运行了一个条件,其他的分支就不会再运行了

zjx_age = input("zjx的年龄:")
xiaoyanger_age = input("小样儿的年龄:")
if int(zjx_age) > int(xiaoyanger_age):
    print("zjx比小样儿大")
elif int(zjx_age) < int(xiaoyanger_age):
    print("zjx比小样儿小")
else:
    print("两人一样大")

注意:条件表达式:需要能够返回布尔类型(比较运算、成员运算、身份运算、逻辑运算)

   "",[],{},(),0,False代表条件不成立
name = 'zhangjx'
if 'jx' in name:    #成员关系运算符
    print('name字符串中包含jx')
else:
    print('name字符串中不包含jx')

a = 4
b = 6
if a < 10 and b < 10:    #逻辑运算符
    print('a,b都小于10')
else:
    print('a,b至少有一个大于等于10')

a =[]
if a:
    print("True")
else:
    print("False)
2)if的嵌套
a = 4
b = 6
name=['C++','python','java']
if a > b:
    print("a大于b")
    if "python" in name:
        print("我要学python")
    else:
        print("我要学C++")
else:
    print("我要学java")

二、for

1)遍历列表、元组、字符串、集合
songs = ['爱转角','晴天','恋爱达人','明明就','左手指月']
for item in songs:
    print('正在播放的歌曲:{}'.format(item))

结果:
正在播放的歌曲:爱转角
正在播放的歌曲:晴天
正在播放的歌曲:恋爱达人
正在播放的歌曲:明明就
正在播放的歌曲:左手指月

注意:元组、字符串、集合遍历方式同列表

for循环里面有个隐藏机制:index + 1

 2)遍历字典

对字典使用for循环,取到的默认是所有的key
songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
for item in songs:
    print('正在播放的歌曲:{}'.format(item))

结果:
正在播放的歌曲:1
正在播放的歌曲:2
正在播放的歌曲:3
正在播放的歌曲:4
正在播放的歌曲:5

如何取所有的值?

songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
for item in songs.values():
    print('正在播放的歌曲:{}'.format(item))

结果:
正在播放的歌曲:爱转角
正在播放的歌曲:晴天
正在播放的歌曲:恋爱达人
正在播放的歌曲:明明就
正在播放的歌曲:左手指月

如何取key和value?

songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
for key,value in songs.items():
    print('keys:{},values:{}'.format(key,value))

结果:
keys:1,values:爱转角
keys:2,values:晴天
keys:3,values:恋爱达人
keys:4,values:明明就
keys:5,values:左手指月
songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
for a in songs.items():
    print(a)

结果:
('1', '爱转角')
('2', '晴天')
('3', '恋爱达人')
('4', '明明就')
('5', '左手指月')

3)for循环嵌套

songs = ['爱转角','晴天','恋爱达人','明明就']
my_lists = ['smile','zjx','python','lemon']
for song in songs:
    for my_list in my_lists:
        print('songs:{},my_list:{}'.format(song,my_list))

4)循环一个指定的列表

names = [['zjx','小可',],['花花','钉钉','小米'],['小林','小罗'],['丽丽','萌萌']]
for group in names :
    print(group)
    for name in group:
        print(name)

结果:
['zjx', '小可']
zjx
小可
['花花', '钉钉', '小米']
花花
钉钉
小米
['小林', '小罗']
小林
小罗
['丽丽', '萌萌']
丽丽
萌萌

5)没有指定的列表

range(start:end:step):取左不取右,同切片

for i in range(1,10):
    print(i)

end控制不换行,等号后可加分隔符

for i in range(1,10):
    print(i,end=',')   # 1,2,3,4,5,6,7,8,9,

三、while

使用场景:

  • 没有具体的变量可以遍历;

  • 不知道具体要循环的次数;

  • 不知道终止的条件;

  • 相当于手工版的for

语法:

  while  条件:

    代码

流程:当把while循环下面的子分支执行完毕以后,程序会返回while的条件判断。

list_1 = ["zjx","learn","python","java","ruby"]
index=0
while index < len(list_1):
    print(list_1[index])
    index += 1

结果:
zjx
learn
python
java
ruby

终止循环(可用于for、while):

  • break:终止整个循环,执行循环体之外后面的代码

list_1 = ["zjx","learn","python","java","ruby"]
index=0
while index < len(list_1):
    print(list_1[index])
    index += 1
    if index == 4:
        brea

结果:
zjx
learn
python
java
  • continue:终止本次循环

list_1 = ["zjx","learn","python","java","ruby"]
index=0
while index < len(list_1):
    print(list_1[index])
    index += 1
    print("执行continue前会执行本句吗?")
    continue
    print("执行continue后会执行本句吗?")

pass:还不知道具体写什么内容,用pass去占坑,用来保持语法的完整性

原文地址:https://www.cnblogs.com/zhangjx2457/p/13615732.html