文档字符串|学习笔记

简介: 快速学习文档字符串

开发者学堂课程【Python 语言基础 3:函数、面向对象、异常处理文档字符串】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/601/detail/8729


文档字符串


目录:

一、help 函数的简介及其用法

二、自定义函数

三、文档字符串怎么编写

 

一、help 函数的简介及其用法

什么叫文档字符串?

在了解它之前,先来了解一个函数 help,#help()是 python 中的一个内置函数,help 翻译为帮忙、救命,在这里就是帮助的意思,我们通过 help() 函数可以查询 python 中的函数的用法。help 函数里面是我们的函数对象

hel p (函数对象),比如说获取 print 的函数用法,就可以使用 help(),里面输入print, 为 help(print),注意是直接输入对象,这样就可以获取函数 print 的使用说明。

来看一下效果,执行代码

看 Help on built in function 内建函数 print in module builtins ,然后 print 结构和 print 参数

省略号为可以传多个参数,sep、 end 、file、flush 包括默认值已经写好了

Prints the values to a stream, or to sys.stdout by default.

把这些值打印到一个流中,或者是系统的标准输出,默认的。

file、sep、end、flush 这些参数都有一个描述,当我们遇到一些不懂的函数的时候,通过help可以查看这个说明,这是系统的内置函数。

 

二、自定义函数

下面写一个自定义的函数 fn   def fn(a,b,c):  return 10

是可以通过 help 函数来进行获取用法,直接 help(fn),执行获取到了信息。

就把函数的结构显示出来了,因为在定义函数时没有写说明,所以运行出来的结果没有上面的 print 后面跟的说明

有说明好还是没有说明好

当然是有说明好,我们在开发是时候往往是多人协作的一个开发,当别人使用你定义的函数或者是你使用别人定义的函数,而你不知道怎么用的情况下最好有一个说明,所以注意我们再写函数的时候一定要写一个说明。这就是我们要说的文档字符串。

 

三、文档字符串怎么编写

文档字符串非常简单,其实直接在函数的第一行写一个字符串就是文档。在第一行写一个单引号或者是双引号就是字符串,但是一般我们会使用三重引号,我们这个长字符串是可以跨行写,这是文档字符串的示例,可以写 函数的作用 函数的参数 ,参数 a  的作用是什么,类型是什么,默认值等等。

或者说别人可以通过 help 来查看这个描述,或者说直接看源码,这是文档字符串的一个作用,但是不是强制的,最好养成编写文档字符串的一个好习惯,利人利己。我们也可以写复杂一点,我们看这个函数不看文档字符串的话是不知道 a b c 要传什么类型的值,是整型啊还是 bool 值还是需要序列还是字典在这里是看不出来的。

 

我可以在 a 后面写一个:int  在  b 后面:bool  在 c 后面加入: str

这样通过它我能看出来需要什么类型,但是注意

这只是一个描述,没有其他任何作用,没有强制性。这时候在看文档字符串,能看出来什么类型了,更加清晰。

Fn(a:int, b:bool, c:str)

这是一个文档字符串的示例

函数的作用:。。。。

函数的参数:

A,作用,类型,默认值。。。

B,作用,类型,默认值。。。

C,作用,类型,默认值。。。

 

假如 c 有默认值,有默认值可以直接写 c:str = ‘hello’  默认值就是 hello

也可以在后面写一个  -> str:

这表示函数的返回值是一个字符串,str 是 int,返回值就是整型

这样我们自己使用或是别人使用定义的函数会比较清晰了。

还有一点 python 文档给我们提了一个要求,要求我们文档字符串尽量使用英文编写,对我们来说意义不大,大部分我们工作环境是中国人,这样使用中文就是可以了,如果项目是对外开发的,考虑到有没有和用其他语言的程序员开发,如果涉及对外开发,注释尽量使用英语来写,根据开发环境来定。

相关文章
|
5月前
|
C++
【C++基础】C++中的字符串
【C++基础】C++中的字符串
18 0
|
5月前
|
C++
C++语言学习数组和字符串应用案例
【4月更文挑战第8天】该文展示了C++中数组和字符串的应用案例。数组示例定义了一个整数数组并访问、修改其元素,计算了元素之和。字符串示例中,定义了一个字符串并遍历、修改字符,进行了字符串拼接、查找子字符串及替换操作。
24 3
|
11月前
ES6系列笔记-字符串方法和字符串模板
ES6系列笔记-字符串方法和字符串模板
34 1
|
5月前
|
安全 程序员 C语言
C++零基础教程(C++中的字符串)
C++零基础教程(C++中的字符串)
59 0
|
索引
查询字符串 & 模板字符串
查询字符串 & 模板字符串
Markdown 语法一共有哪些?如何使用?
Markdown 语法一共有哪些?如何使用?
131 0
|
存储 Go 开发者
字符类型注意事项|学习笔记
快速学习字符类型注意事项。
字符类型注意事项|学习笔记
|
JavaScript 开发者
字符串的 padStart 方法使用|学习笔记
快速学习字符串的 padStart 方法使用
252 0
字符串的 padStart 方法使用|学习笔记
|
Prometheus Kubernetes Cloud Native
Markdown编辑文档语法格式详解
Markdown编辑文档语法格式详解
|
开发者 Python
字符串的表示方式|学习笔记
快速学习字符串的表示方式