使用Python3内置文档高效学习以及官方中文文档


Posted in Python onMay 19, 2019

概述

从前面的对Python基础知识方法介绍中,我们几乎是围绕Python内置方法进行探索实践,比如字符串、列表、字典等数据结构的内置方法,和大量内置的标准库,诸如functools、time、threading等等,而我们怎么快速学习掌握并学会使用这个Python的工具集呢? 我们可以利用Python的内置文档大量资源既可以掌握许多关于Python工具集的基本使用。

dir函数

Python中内置的dir函数用于提取某对象内所有属性的方法,,诸如对象的方法及属性

L = [1, 2, 3, 4]
print(dir(L))
print([])

示例结果:

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

可以看到我们可以传入某实例对象查看其属性,也可以直接传入其内置类型的空对象查看对应属性,我们甚至还可以直接传入类型的名称得到对应的属性列表:

print(dir(list))

示例结果:

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

虽然我们获得了对象的属性,但我们仍然不知道这些属性方法的含义,那么我们可以利用文档字符串帮助我们继续学习对象属性。

文档字符串:doc

文档字符串是由Python自动生成的,而生成的内内容和位置取决于我们的放置方式,文档字符串也是一段注释,放在模块文件、函数以及类语句的顶端,然后Python会自动封装这个字符串,即成为所谓的文档字符串,通过对象的__doc__进行查看。

def two_sum(x, y):
 '''
 Used to calculate the sum of two numbers
 '''
 return x + y


print(two_sum.__doc__)

示例结果:

Used to calculate the sum of two numbers

以上示例就实现了对一个函数(用于计算两数之和)绑定文档字符串并查看其文档字符串的过程。我们也可以查看一些内置类型的某属性的具体使用方法,比如查看列表对象中pop的具体含义和用法

L = [1, 2, 3, 4]
print(L.pop.__doc__)

示例结果:

L.pop([index]) -> item -- remove and return item at index (default last).
Raises IndexError if list is empty or index is out of range.

PyDoc:help函数

我们可以利用Python中help函数工具更加友好结构化的展示对象的文档字符串和其他的信息,对于对于某些较大的对象help内容会分成几段,甚至可以进行交互展示对象的详细信息。

help(list)

交互结果:

Help on class list in module __builtin__:

class list(object)
 |  list() -> new empty list
 |  list(iterable) -> new list initialized from iterable's items
 |
 |  Methods defined here:
 |
 |  __add__(...)
 |      x.__add__(y) <==> x+y
 |
 |  __contains__(...)
 |      x.__contains__(y) <==> y in x
 |
 |  __delitem__(...)
 |      x.__delitem__(y) <==> del x[y]
 |
 |  __delslice__(...)
 |      x.__delslice__(i, j) <==> del x[i:j]
 |
-- More  --

比如我们可以通过help查看列表的所有详细信息和属性的用法等,通过回车键查看更多的信息。

官方中文文档

对于英文阅读有一定困难的小伙伴,新出Python官方中文文档是较好的学习体验教程:docs.python.org/zh-cn/3/,从入门教程,标准库,在到Python高级特性应有尽有,算是不错的学习资源和一本常用的**“Python字典”**。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
基于python的Tkinter实现一个简易计算器
Dec 31 Python
详解Django之auth模块(用户认证)
Apr 17 Python
详解如何用django实现redirect的几种方法总结
Nov 22 Python
python3实现二叉树的遍历与递归算法解析(小结)
Jul 03 Python
Pandas0.25来了千万别错过这10大好用的新功能
Aug 07 Python
python基于pdfminer库提取pdf文字代码实例
Aug 15 Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
Oct 10 Python
python实现简单井字棋游戏
Mar 04 Python
python 读txt文件,按‘,’分割每行数据操作
Jul 05 Python
python代码实现图书管理系统
Nov 30 Python
python文本处理的方案(结巴分词并去除符号)
May 26 Python
能让Python提速超40倍的神器Cython详解
Jun 24 Python
python反编译学习之字节码详解
May 19 #Python
python从入门到精通 windows安装python图文教程
May 18 #Python
详解用Python实现自动化监控远程服务器
May 18 #Python
Python实现打砖块小游戏代码实例
May 18 #Python
如何在Python中实现goto语句的方法
May 18 #Python
OpenCV搞定腾讯滑块验证码的实现代码
May 18 #Python
Python3匿名函数lambda介绍与使用示例
May 18 #Python
You might like
php htmlspecialchars加强版
2010/02/16 PHP
关于php内存不够用的快速解决方法
2013/10/26 PHP
Laravel 5框架学习之子视图和表单复用
2015/04/09 PHP
PHP模拟http请求的方法详解
2016/11/09 PHP
PDO::rollBack讲解
2019/01/29 PHP
在JavaScript中获取请求的URL参数[正则]
2010/12/25 Javascript
javascript对数组的常用操作代码 数组方法总汇
2011/01/27 Javascript
capacityFixed 基于jquery的类似于新浪微博新消息提示的定位框
2011/05/24 Javascript
window.location.href的用法(动态输出跳转)
2014/08/09 Javascript
javascript动态创建及删除元素的方法
2014/12/22 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
JS判断form内所有表单是否为空的简单实例
2016/09/09 Javascript
微信小程序 刷新上拉下拉不会断详细介绍
2017/05/11 Javascript
javascript+html5+css3自定义弹出窗口效果
2017/10/26 Javascript
JavaScript的setter与getter方法
2017/11/29 Javascript
webpack打包js的方法
2018/03/12 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
SVG实现时钟效果
2018/07/17 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
2018/09/13 Javascript
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
js判断复选框是否选中的方法示例【基于jQuery】
2019/10/10 jQuery
浅析Vue下的components模板使用及应用
2019/11/27 Javascript
[02:40]2018年度DOTA2最佳新人-完美盛典
2018/12/16 DOTA
python中的代码编码格式转换问题
2015/06/10 Python
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
Python命名空间的本质和加载顺序
2018/12/17 Python
解决pycharm上的jupyter notebook端口被占用问题
2019/12/17 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
Python判断变量是否是None写法代码实例
2020/10/09 Python
中西医专业毕业生职业规划书
2014/02/24 职场文书
公司离职证明范本
2014/10/17 职场文书
工程催款通知书
2015/04/17 职场文书
竞聘书的秘诀
2019/04/02 职场文书
​(迎国庆)作文之我爱我的祖国
2019/09/19 职场文书