简介:Python基础-条件判断和for循环遍历
1. 条件判断语句
和其他语言一样,Python也提供了 if/else 条件判断语句,只是语法不同。在其他语言里,你可能需要通过花括号定义边界。但是在Python中,我们是通过 换行+4 个空格来表示边界。具体表现如下:
a = 0
if a==1 :
print('a等于1')
elif a>1 :
print('a大于1')
else:
print('a小于1')
注意:条件表达式没有括号,这样一点需要特别注意。在PHP或者JS编程语言中都是有 () 包起来,再通过 {} 定义代码块
2. while 循环
while循环和PHP、JS基本相同。具体表现如下:
a = 1
while a<10:
print(a)
a += 1
print('循环结束')
但是,Python中给while循环提供了一个 else 功能,方式如下:
a = 1
while a<10:
print(a)
a += 1
else:
print('循环结束')
看起来有点鸡肋,估计大家应该用不到。
3. for循环
Python中的for循环有点像JS中的 for in 循环,适用于循环遍历列表、字典、集合这一类的数据结构。代码形式如下:
a = [1,2,3,4,5,6]
for x in a :
print(x)
print('循环结束')
和while循环一样,Python也提供了一个 else 功能,由于这个功能有点鸡肋,我们这里不做过多展示。
上面的方式直接遍历无法获取当前元素的在list中的索引值,如果想要像js那样获取索引,可以结合 enumerate() 函数使用,该函数返回一个枚举,枚举中包含索引值。具体使用方式如下:
imgs = ['../static/zhaojinmai2.jpg','../static/zhaojinmai3.jpg','../static/zhaojinmai4.jpg','../static/zhaojinmai5.jpg']
for index,img_path in enumerate(imgs):
print(img_path,index)
注意:第一个参数是索引,第二个才是值
不论是while循环还是for循环,Python都提供了一个结束循环的标识 break ,还提供了一个跳过本次循环的标识 continue ,具体代码方式如下:
#while循环终止
a = 1
while a<10:
if a = 5:
break
print(a)
a += 1
else:
print('循环结束')
#for循环跳过某次循环
a = [1,2,3,4,5,6]
for x in a :
if x == 5:
continue
print(x)
print('循环结束')
注意:但是用 break 终止当前循环时,不会执行 else 中的代码块
在其他编程语言中,for循环都是定义一个变量,初始值为0,然后循环依次使变量+1,直到最大值结束。这一类的方式如何在python中实现呢?
Python提供了一个 range() 函数来解决这个问题,通过它可以实现上面类似的功能:
for x in range(0,10):
print(x)
# 打印结果:0 1 2 3 4 5 6 7 8 9
for x in range(0,10,2):
print(x)
# 打印结果:2 4 6 8 10
注意:range() 函数第二个参数是最大值或最小值,但不包括这个值。第三个参数:表示步进值。
range() 函数返回的是一个 range 数据结构,不是列表,也不是元组,这一点需要特别注意一下
上面已经实现了从小到大的循环功能,python又如何实现从大到小的循环呢?
其实只要将第三个参数步进值设置成负数即可,具体如下:
for x in range(10,0,-1):
print(x)
# 打印结果:10 9 8 7 6 5 4 3 2 1
注意了,循环从大到小时,第一个参数是最大值,第二个参数是最小值并且不包括最小值
有遗漏或者不对的可以在我的公众号留言哦