【发布时间】:2015-11-04 11:17:47
【问题描述】:
我正在使用 Python 2.7 并编写了以下内容:
定义算术(A): x=1 """ 这里有一些cmets """ 如果 x=1: x=1 elif x=2: x=2 返回 0但它有缩进问题:
如果 x=1: ^ IndentationError:意外缩进那么如何在函数中写cmets呢?
【问题讨论】:
标签: python
我正在使用 Python 2.7 并编写了以下内容:
定义算术(A): x=1 """ 这里有一些cmets """ 如果 x=1: x=1 elif x=2: x=2 返回 0但它有缩进问题:
如果 x=1: ^ IndentationError:意外缩进那么如何在函数中写cmets呢?
【问题讨论】:
标签: python
""" xxx """ 是 docstring。是的,它可以用作注释,但它最终会成为实际代码的一部分,因此需要缩进:
def arithmetic(A):
x=1
"""
Some comments here
"""
if x==1:
x=1
elif x==2:
x=2
return 0
如果您使用以# 开头的面向行的 cmets,则它们不是实际代码的一部分,因此它们的缩进无关紧要。
关于文档字符串的一个好处是工具可以使用它们,例如,显示有关函数的信息。如果你曾经在 Python 命令提示符下使用过help(some_function),你就会看到一个文档字符串。
实际上,如果将函数加载到 IDE 中,然后键入 help(arithmetic),则可以看到 "Some comments here"。
我稍微修改了您的代码,因为在 Python 中,= 用于赋值,您必须在 if 语句中使用 == 来检查是否相等。
因此代码将按原样编译和运行,但请注意,只有在 x 已经等于 1 时才将 x 设置为 1 实际上不会做任何事情:)
【讨论】:
在 Python 中 cmets 需要与其他代码块具有相同的对齐方式,例如
def arithmetic(A):
x=1
"""
Some comments here
"""
if x=1:
x=1
elif x=2:
x=2
return 0
通常人们使用# 进行内联评论,例如:
def func(a):
a = 5
# I am a comment
c = 6
【讨论】:
循环,
python 中的注释使用井号# 用于单行 cmets 和用于多行 cmets 的三引号 多线 cmets 的问题是它们有时很挑剔,必须 缩进或者你会得到这个错误
见Way to create multiline comments in Python?
还请注意许多 python 样式指南和项目通常使用 # 表示 cmets。许多文本编辑器和 IDE 提供了注释文本块的快捷方式
【讨论】: