陈田甜 发表于 2020-9-3 15:35:02

有谁能告诉我pytnon的缩进到底什么意思??

大家好,我是一个新手小白,学到了小甲鱼的老师第二张,里面提到的缩进,我不知道是什么意思,为什么要用它,什么时候需要用到,我百度了一下但是都不是很详细,不太明白

1q23w31 发表于 2020-9-3 15:38:40

缩进就是python的格式规定,用来规范化代码,让python知道哪几行是一个代码块,通常一个tab就是一个缩进

sunrise085 发表于 2020-9-3 15:51:52

在python中,用缩进来规范代码的层次,缩进相同的代码属于同一层次
看下面这个例子
def fun():
    函数第一行
    函数第二行
    函数第三行
while True:
    while循环第一行
    while循环第二行
    while循环第三行
    if a:
      if第一行
      if第二行
    while循环第七行
    while循环第八行

xiangya 发表于 2020-9-3 15:54:11

缩进相当于格式要求,好像你做数学题一样,必须先写解,然后作答,格式要规范

求资专用 发表于 2020-9-3 15:59:34

你可以理解为:缩进量相同的代码在同一“层”中,多缩进一个tab代表这些代码在上一“层”的内部。例如:
class Turtle: #这里完全没有缩进,所以在最底部
    def __init__(self):#这里有一个缩进,说明这个def是在class内部的
      # 乌龟初始体力
      self.power = 100 #这里有2个缩进,说明,它是在只有一个缩进的def内部的,下面类似
      # 初始位置随机
      self.x = r.randint(legal_x, legal_x) #0到10之间的随机数
      self.y = r.randint(legal_y, legal_y) #到这里都是两个缩进,下面是一个缩进了,说明def __init__(self):到这里结束了。

    def move(self):
      # 随机计算方向并移动到新的位置(x, y)
      new_x = self.x + r.choice() #随机选一个
      new_y = self.y + r.choice()
      # 检查移动后是否超出场景x轴边界
      if new_x < legal_x:
            self.x = legal_x - (new_x - legal_x)
      elif new_x > legal_x:
            self.x = legal_x - (new_x - legal_x)
      else:
            self.x = new_x
      # 检查移动后是否超出场景y轴边界
      if new_y < legal_y:
            self.y = legal_y - (new_y - legal_y)
      elif new_y > legal_y:
            self.y = legal_y - (new_y - legal_y)
      else:
            self.y = new_y      
      # 体力消耗
      self.power -= 1
      # 返回移动后的新位置
      return (self.x, self.y)

    def eat(self):
      self.power += 20
      if self.power > 100:
            self.power = 100

陈田甜 发表于 2020-9-3 15:59:43

那些时候要用到

1q23w31 发表于 2020-9-3 16:01:27

陈田甜 发表于 2020-9-3 15:59
那些时候要用到

写循环,条件判断,异常处理,函数,类等时候

陈田甜 发表于 2020-9-3 16:02:35

你好,谢谢了,你说的很专业,但是我可能刚刚才学不太懂,以前我完全没接触过,我先跟着小甲鱼老师慢慢朝后面学习吧

孤独的嫖客 发表于 2020-9-3 18:59:38

简单的来说你用专业编辑器vscode 或者pycharm或者其他的编辑器
都会自动缩进的 你只管回车就行了缩进由编辑器处理
这一切的前提是你缩进前的符号是正确的 比如for循环末尾的:
你要是自己丢了编辑器不负责的

小莫非 发表于 2020-9-3 19:33:53

简单来说。缩进可以理解为:
1、相当于将代码变得有层次感,阅读更简洁、方便
2、每一次缩进让解释器理解为这个是某一个代码块的下属代码,方便执行

suchocolate 发表于 2020-9-3 20:00:56

不看书的吗?

Twilight6 发表于 2020-9-4 00:58:33



Python语言是用缩进来表示相互之间的关系也是和其他语言不一样的地方,比如下面代码:

x = 3
y = 5
if y > x:
   print(x+y)

这里 print(x+y) 是在如果 y 大于 x 的前提条件下成立的

那么就可以这么理解,当你条件成立了,那么就会执行if 缩进下面的代码块

如果你的条件不成立,那么就不会执行 if 下面的代码块

而且缩进一般是 4 个空格哈
页: [1]
查看完整版本: 有谁能告诉我pytnon的缩进到底什么意思??