使用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实现的阳历转阴历(农历)算法
Apr 25 Python
Python字符串处理之count()方法的使用
May 18 Python
在Mac OS上搭建Python的开发环境
Dec 24 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
May 29 Python
python保存字典和读取字典的实例代码
Jul 07 Python
Python-copy()与deepcopy()区别详解
Jul 12 Python
python try except返回异常的信息字符串代码实例
Aug 15 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
Oct 24 Python
pytorch1.0中torch.nn.Conv2d用法详解
Jan 10 Python
解决pytorch-yolov3 train 报错的问题
Feb 18 Python
解决python中import文件夹下面py文件报错问题
Jun 01 Python
详解python3类型注释annotations实用案例
Jan 20 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树形菜单代码
2014/11/19 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
关于jquery性能最佳实践的讨论,与求教
2012/03/30 Javascript
js 调用百度地图api并在地图上进行打点添加标注
2014/05/13 Javascript
JScript中的条件注释详解
2015/04/24 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
js本地图片预览实现代码
2016/10/09 Javascript
canvas绘制表盘时钟
2017/01/23 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
Angular异步变同步处理方法
2018/08/13 Javascript
深入理解Vue 组件之间传值
2018/08/16 Javascript
VUE 项目在IE11白屏报错 SCRIPT1002: 语法错误的解决
2020/09/27 Javascript
ant design vue datepicker日期选择器中文化操作
2020/10/28 Javascript
微信小程序实现列表左右滑动
2020/11/19 Javascript
Python(Tornado)模拟登录小米抢手机
2013/11/12 Python
Python中不同进制的语法及转换方法分析
2016/07/27 Python
python实现感知器算法详解
2017/12/19 Python
python3.4实现邮件发送功能
2018/05/28 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
python 多线程重启方法
2019/02/18 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
Python代码实现http/https代理服务器的脚本
2019/08/12 Python
通过 Python 和 OpenCV 实现目标数量监控
2020/01/05 Python
Python模块相关知识点小结
2020/03/09 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
朗仕(Lab series)英国官网:雅诗兰黛集团男士专属护肤品牌
2017/11/28 全球购物
Michael Kors加拿大官网:购买设计师手袋、手表、鞋子、服装等
2019/03/16 全球购物
料理师求职信
2014/01/30 职场文书
优秀三好学生事迹材料
2014/08/31 职场文书
2014年妇女工作总结
2014/12/06 职场文书
2015年上半年物业工作总结
2015/03/30 职场文书
nginx中proxy_pass各种用法详解
2021/11/07 Servers