帮助手册 回忆上次内容
  • 上次了解了注释
  • 注释是为了让程序更可读
  • 注释不会影响程序运行速度
 
  • 注释分为两种
  • 单行的
  • 以#开头
  • 不能是字符串当中的#
 
  • 多行的
  • 三个"
  • 三个'
 
 
  • 多行注释还有什么特殊功能么?
增加描述说明 #!/usr/bin/python3 #vim: set fileencoding=utf-8 ''' 关于当前模块的说明 '''
  • 完整的main.py如下所示
  • :r !whoami
  • 可以得到当前用户名
 
  • :r !date
  • 可以得到当前日期时间
 
  • :w
  • 写完之后保存
 

 
添加图片注释,不超过 140 字(可选)
 
  • 注意 已经设置了 编码格式
  • 可以在命令行中
  • 查看到 main.py 的帮助手册吗?
 
刷新帮助手册
  • 观察帮助手册
  • python3 -m pydoc main
 

 
添加图片注释,不超过 140 字(可选)
 
  • 这很眼熟啊
  • 可以到游乐场里面
  • 首先 import main
  • 然后 help(main)
 
生成帮助手册
  • 一样可以看到相关的文档

 
添加图片注释,不超过 140 字(可选)
 
  • 在当前路径,进入游乐场之后
  • import main
  • help(main)
 
  • 可以生成帮助网页吗?
  • 就像官方的那种帮助一样
 
  • 官方的帮助什么样子?
python3 在线
 

 
添加图片注释,不超过 140 字(可选)
 
  • 可以生成我代码的文档吗?
生成网页
  • python3 -m pydoc -w main
  • 对于 main.py 生成帮助网页
  • 帮助文件叫做 main.html
 

 
添加图片注释,不超过 140 字(可选)
 
  • 帮助文件 就生成在当前的 test 文件夹
打开帮助网页
  • 然后用火狐打开这个网页文件
  • firefox main.html
 

 
添加图片注释,不超过 140 字(可选)
 
  • 右上角是两个链接
  • 当前文件夹索引
  • 当前 html 对应的 py 文件
 
  • 下面是 main 里面的内容
  • 相关的三引号描述
 
  • 再下面是三个链接
  • 是 main.py 引入的三个 module
  • 目前这三个模块的链接都无法打开
  • 因为没有生成
 
更新其他模块帮助文件
  • 修改三个 py 文件的内容
  • 其中 get_fruits 本来就有三引号注释
  • python3 -m pydoc -w get_fruits
 

 
添加图片注释,不超过 140 字(可选)
 

 
添加图片注释,不超过 140 字(可选)
 
  • 只有顶端的三引号注释才被写入模块帮助
  • 下面的三引号注释被忽略
修改模块注释
  • 修改 get_fruits.py
  • 保存并写帮助网页
  • python3 -m pydoc -w get_fruits
 

 
添加图片注释,不超过 140 字(可选)
 
  • 任务完成
  • 把文档写在代码里好吗?
代码即文档
  • CodeAsDocumentation

 
添加图片注释,不超过 140 字(可选)
 
  • 让源代码更容易阅读和理解
  • 尽量减少维护或扩展遗留系统所需的工作量
  • 减少系统的用户和开发人员查阅二级文档来源的需要
  • 通过自成一体的知识表征促进自动化
这很敏捷

 
添加图片注释,不超过 140 字(可选)
总结
  • 这次了解了 帮助文档的 生成
  • 开头的三引号注释 可以生成 帮助文档
  • 文档 可以写成网页
 
  • python3 本身
  • 也有 在线的帮助手册
 
  • 目前的程序
  • 提高了 可读性
 

 
添加图片注释,不超过 140 字(可选)
 
  • 有什么方法
  • 可以让程序 更可读么?
 


[oeasy]python049_帮助手册_pydoc_manual_document的更多相关文章

  1. oeasy教您玩转linux010105详细手册man

    详细手册 回忆上节课 我们上节课学习了使用命令来了解命令 whatis 我们通过他来发出灵魂之问 whatis到底是干什么的?

  2. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  3. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  4. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  5. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  6. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  7. FREERTOS 手册阅读笔记

    郑重声明,版权所有! 转载需说明. FREERTOS堆栈大小的单位是word,不是byte. 根据处理器架构优化系统的任务优先级不能超过32,If the architecture optimized ...

  8. JS魔法堂:不完全国际化&本地化手册 之 理論篇

    前言  最近加入到新项目组负责前端技术预研和选型,其中涉及到一个熟悉又陌生的需求--国际化&本地化.熟悉的是之前的项目也玩过,陌生的是之前的实现仅仅停留在"有"的阶段而已. ...

  9. 转职成为TypeScript程序员的参考手册

    写在前面 作者并没有任何可以作为背书的履历来证明自己写作这份手册的分量. 其内容大都来自于TypeScript官方资料或者搜索引擎获得,期间掺杂少量作者的私见,并会标明. 大部分内容来自于http:/ ...

  10. Redis学习手册(目录)

    为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...

随机推荐

  1. java 项目的创建

    新建一个  Spring Initializr

  2. Django路由控制器urls

    路由, 是一种映射关系,是把客户端请求的url地址和用户请求的应用程序(这里指django里面的视图进行一对一绑定映射的一种关系). 在django中所有的路由最终都被保存到一个变量 urlpatte ...

  3. beego go mod 模式下无法生成注解路由的问题 解决方法

    执行 go get github.com/beego/bee 命令时将bee 命令一定要安装在gopath目录下.有idea或者goland编辑器是最方便的,只需要复制这条命令,然后进入编辑器会提示你 ...

  4. Android 12(S) MultiMedia Learning(六)NuPlayer Decoder

    接下来将会从4个角度来记录NuPlayerDecoder部分 相关代码路径: http://aospxref.com/android-12.0.0_r3/xref/frameworks/av/medi ...

  5. 容器化部署wordpress个人博客系统lnmp环境[自定义网络]

    容器化部署个人博客系统lnmp环境 #告警: WARNING: IPv4 forwarding is disabled. Networking will not work. 96c083a8b5811 ...

  6. if语句嵌套

       // if语句的嵌套         // 在if语句的{}中,执行程序中,再次有if语句         /*         if(){             if(){          ...

  7. react的反向代理

    在配置在src文件夹中setupProxy.js文件,并通过npm安装http-proxy-middleware,代理中间件模块 npm i -S http-proxy-middleware 配置反向 ...

  8. elementUI slider组件,带范围选择实现双向绑定

    网上查过很多相关文章都没有一章是写element ui滑块带范围实现双向绑定 二个滑块二头的数据怎么得到 我的需求是做个时间轴要滑动选择不同的时间 开始很难做最后一点一点摸索得出的结论 好在写出来了先 ...

  9. INFINI Labs 产品更新 | Easysearch 支持 SQL 查询、Console 告警功能支持邮件等多渠道

    INFINI Labs 产品又更新啦~.本次更新概要如下:Easysearch 新增 SQL 插件和JDBC 驱动,支持 SQL 查询,支持 SQL 常用函数等:Console 针对告警功能做了升级优 ...

  10. 《Android开发卷——自定义日期选择器(一)》

    (小米手机) (中兴手机) 在实际开发中,Google官方提供的时间选择器API已经不能满足于我们的需要了,所以很多公司都是采用自定义的形式来实现日期选择器. 这个例子很简单,定义三个NumberPi ...