# Python 语句，缩进和注释

> 原文： [https://www.programiz.com/python-programming/statement-indentation-comments](https://www.programiz.com/python-programming/statement-indentation-comments)

#### 在本教程中，您将学习 Python 语句，为什么缩进很重要以及在编程中使用注释。

## Python 语句

Python 解释器可以执行的指令称为语句。 例如，`a = 1`是一个赋值语句。`if`语句，`for`语句，`while`语句等是其他种类的语句，稍后将进行讨论。

### 多行语句

在 Python 中，语句的结尾用换行符标记。 但是，我们可以使用连续行字符（`\`）来使语句扩展到多行。 例如：

```py
a = 1 + 2 + 3 + \
    4 + 5 + 6 + \
    7 + 8 + 9
```

这是显式的行继续。 在 Python 中，括号`()`，方括号`[]`和花括号`{}`内含换行符。 例如，我们可以将上述多行语句实现为：

```py
a = (1 + 2 + 3 +
    4 + 5 + 6 +
    7 + 8 + 9)
```

在这里，圆括号`()`隐式地进行了行连续。`[]`和`{}`情况相同。 例如：

```py
colors = ['red',
          'blue',
          'green']
```

我们还可以使用分号将多个语句放在一行中，如下所示：

```py
a = 1; b = 2; c = 3
```

* * *

## Python 缩进

大多数编程语言（如 C，C++ 和 Java）都使用花括号`{}`定义代码块。 但是，Python 使用缩进。

代码块（[函数](/python-programming/function)，[循环](/python-programming/for-loop)等的主体）以缩进开始，并以第一条未缩进的行结束。 缩进量取决于您，但是在整个块中缩进量必须保持一致。

通常，四个空格用于缩进，并且优先于制表符。 这是一个例子。

```py
for i in range(1,11):
    print(i)
    if i == 5:
        break
```

Python 中缩进的实现使代码看起来整洁干净。 这导致看起来相似且一致的 Python 程序。

缩进可以在连续行中忽略，但是缩进始终是一个好主意。 它使代码更具可读性。 例如：

```py
if True:
    print('Hello')
    a = 5
```

和

```py
if True: print('Hello'); a = 5
```

两者都是有效的并且做相同的事情，但是前一种风格更加清晰。

缩进不正确将导致`IndentationError`。

* * *

## Python 注释

编写程序时，注释非常重要。 他们描述了程序内部正在发生的事情，因此查看源代码的人不会很费解。

您可能会忘记一个月后刚编写的程序的关键细节。 因此，花时间以注释的形式解释这些概念总是很有意义的。

在 Python 中，我们使用井号（`#`）符号开始编写注释。

它扩展到换行符。 注释供程序员更好地理解程序。 Python 解释器会忽略注释。

```py
#This is a comment
#print out Hello
print('Hello')
```

* * *

### 多行注释

我们可以将注释扩展到多行。 一种方法是在每行的开头使用 hash（`#`）符号。 例如：

```py
#This is a long comment
#and it extends
#to multiple lines
```

这样做的另一种方法是使用三引号，即`'''`或`"""`。

这些三引号通常用于多行字符串。 但是它们也可以用作多行注释。 除非它们不是文档字符串，否则它们不会生成任何额外的代码。

```py
"""This is also a
perfect example of
multi-line comments"""
```

要了解有关注释的更多信息，请访问 [Python Comments](/python-programming/comments) 。

* * *

### Python 中的文档字符串

docstring 是文档字符串的缩写。

Python docstring（文档字符串）是[字符串](/python-programming/string)字面值，它们在函数，方法，类或模块的定义之后出现。

编写文档字符串时使用三引号。 例如：

```py
def double(num):
    """Function to double the value"""
    return 2*num
```

文档字符串会在定义函数，类或模块之后显示。 这使用三引号将文档字符串与多行注释分开。

文档字符串与对象关联为其`__doc__`属性。

因此，我们可以使用以下代码行访问上述函数的文档字符串：

```py
def double(num):
    """Function to double the value"""
    return 2*num
print(double.__doc__)
```

**输出**

```py
Function to double the value
```

要了解有关 Python 中的文档字符串的更多信息，请访问 [Python 文档字符串](/python-programming/docstrings)。