大部分编程语言使用大括号{}来分隔代码块,想很早的vb用begin 和end来分隔代码块,或许是出于简洁的目的,python使用代码缩进和冒号来区分代码之间的层次, python的一次缩进是4个空格。
1、6种常见缩进例子
python的缩进是有规律的,在代码里,只要遇到了冒号(:),就一定有缩进,下面是6种最常见的缩进例子
(1) if条件语句
value = input("输入数据:")
if value == '1':
print('ok')
elif value == '2':
print('very ok')
else:
print('no ok')
(2)for循环
lst = [1, 2, 3]
for item in lst:
print(item)
(3)while循环
lst = [1, 2, 3]
index = 0
while index < len(lst):
print(lst[index])
index += 1
(4)定义函数
def func():
print('ok')
(5)定义类
class Stu:
pass
(6)with 语句
with open('a.txt', 'r') as f:
f.readlines()
2、啥是语句块
缩进的作用是界定语句块(也可以理解为代码块),那么啥是语句块?
![ebbe13eff3cbbc7d747855a5f90e7453.png](https://i-blog.csdnimg.cn/blog_migrate/72922d03252efddfa96e5fc8ad9b6d0d.png)
从概念上来说,绿色区域算是一个语句块,红色区域也是一个语句块,这两个区域里的代码,缩进的空格数量是相同的,绿色的部分,缩进的空格是0个,红色的部分,缩进的空格是4个,就是这么简单。
3、缩进存在的意义
写作文的时候,你不用标点符号试试,谁能看得懂,缩进就如同标点符号,它界定一个语句块的范围,如果没有缩进,你看到的代码会是下面的这个样子
def func():
print(1)
print(2)
func()
那么现在请你回答,func函数里,有几行代码? 你可以说是2行,也可以说是1行,因为没有明显的边界来界定函数的代码范围,这种情况在计算机中是绝对不允许出现的,一旦代码出现二义性,那么对于一段代码,即便是相同的输入,也无法保证可以得到相同的输出。
只有你将代码写成下面的样子,才能清楚的分清楚,哪些代码是函数内部的
def func():
print(1)
print(2)
func()
想要获得更多经验分享,加入微信群,随时沟通
![68896e8d9df744c26beef2d02832dbd3.png](https://i-blog.csdnimg.cn/blog_migrate/aea8e2240b5d391448c6693d6cd1c41a.jpeg)