帮助手册 回忆上次内容
  • 上次了解了注释
  • 注释是为了让程序更可读
  • 注释不会影响程序运行速度
 
  • 注释分为两种
  • 单行的
  • 以#开头
  • 不能是字符串当中的#
 
  • 多行的
  • 三个"
  • 三个'
 
 
  • 多行注释还有什么特殊功能么?
增加描述说明 #!/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. 大数据之Hadoop的HDFS存储优化—异构存储(冷热数据分离)

    异构存储主要解决,不同的数据,储存在不同类型的硬盘中,达到最佳性能的问题 1)存储类型 RAM_DISK:内存镜像文件系统 SSD:SSD固态硬盘 DISK:普通磁盘,在HDFS中,如果没有主动声明数 ...

  2. Java21新特性-虚拟线程

    虚拟线程是轻量级线程(类似于 Go 中的 "协程(Goroutine)"),可以减少编写.维护和调度高吞吐量并发应用程序的工作量. 线程是可供调度的最小处理单元,它与其他类似的处理 ...

  3. 深入理解 Swoole 的底层加载原理

    首发原文链接:深入理解 Swoole 的底层加载原理 PHP 扩展加载 我们从 php-src/sapi/cli/php_cli.c:1159 文件的入口函数 int main(int argc, c ...

  4. Web 页面性能衡量指标-以用户为中心的效果指标

    Web 页面性能衡量指标-以用户为中心的性能指标 以用户为中心的性能指标是理解和改进站点体验的关键点 一.以用户为中心的性能指标 1. 指标是用来干啥的? 指标是用来衡量性能和用户体验的 2. 指标类 ...

  5. k8s集群创建阿里云版本

    阿里云创建k8s集群实例 创建两个8G内存的抢占实例(青岛),能ssh 默认关闭防火墙,且没有交换分区 配置/etc/hosts,主机名 配置k8s仓库 配置命令补全 安装docker(需要conta ...

  6. kettle从入门到精通 第十五课 kettle 映射 (子转换)01

    1.kettle 里面的映射和java代码里面的封装是一个概念,就是将一个可复用的模块单独抽离为公共模块供其他模块引用,用到的步骤或者组件如下 2.构建子映射,子映射需要用到映射输入规范和映射输出规范 ...

  7. journalctl 命令使用总结

    转载请注明出处: journalctl 命令是 Linux 系统中一个用于查询和管理系统日志的命令行工具,它基于 systemd 的日志守护进程 systemd-journald 的功能. 1. 介绍 ...

  8. 反外挂 DDos UDP 攻击只需客户端 开着游戏客户端

    #include<WINSOCK2.H> #include<iostream> #include<string> using namespace std; #inc ...

  9. RSA算法中,为什么需要的是两个素数?

    PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全.密码学.联邦学习.同态加密等隐私计算领域的技术和内容. RSA算法中,为什么需要的是两个素数? RSA算法是一种广泛使用 ...

  10. java8 Optional使用 stream filter多级过滤

    java8 Optional使用 stream filter多级过滤 package com.example.core.mydemo.java8; public class MyModel { pri ...