[oeasy]python0069_帮助手册_pydoc_manual_document
- 上次了解了注释
- 注释是为了让程序更可读
- 注释不会影响程序运行速度
- 注释分为两种
- 单行的
- 以#开头
- 不能是字符串当中的#
- 多行的
- 三个"
- 三个'
- 多行注释还有什么特殊功能么?
- 原始文档如下图
- 插入三引号注释
- 如下图所示
- 准备插入下面三项的注释
- date 编写日期
- description 描述信息
- author 作者
- 将光标放在
- 第4行第1列
- :r !date
- date
- 是外部shell中可以执行的命令
- 可以得到当前日期时间
- !date
- 可以在shell中执行外部命令date
- r !date
- 将外部命令date输出的结果
- 输出到当前文件缓存中
- 填写完成注释
- 注意
- 已经设置了 编码格式
- :wq
- 写完之后
- 保存并退出回到shell
- 可以在命令行中
- 查看到 main.py 的帮助手册吗?
- python3 -m pydoc main
- -m pydoc 使用pydoc模块
- pydoc 就是 python的 document 文档
- 整体就可以得到
- main.py模块的帮助文档手册
- 会先运行这个main.py
- 然后会显示main模块的帮助
- 这很眼熟啊
- 可以到游乐场里面
- 首先 import main
- 然后 help(main)
- 在当前路径,进入游乐场之后
- import main
- help(main)
- 一样可以看到相关的文档
- 可以生成帮助网页吗?
- 就像官方的那种帮助一样
- 官方的帮助什么样子?
- python3 本身有在线的文档
- 在http://docs.python.org
- 可以生成我代码的文档吗?
- python3 -m pydoc -w main
- 对于 main.py 生成
- 帮助网页 main.html
- 注意最后一句
- wrote main.html
- 写下了一个新文件
- 这个文件main.html
- 就是main.py的帮助文件
- 就生成在当前的 test 文件夹
- 然后用火狐打开这个网页文件
- firefox main.html
- 右上角是两个链接
- 当前文件夹索引
- 当前 html 对应的 py 文件
- 下面是 main 里面的内容
- 相关的三引号描述
- 再下面是三个链接
- 是 main.py 引入的三个 module
- 目前这三个模块的链接都无法打开
- 因为都还没有生成
- get_fruits 本来就有三引号注释
- python3 -m pydoc -w get_fruits
- 生成了网页
- 再次用firefox 打开 main.html
- 点击get_fruits
- 跳转到get_fruits模块的帮助文档
- 红框中
- 只提到了 apple
- 没有提到banana
- 只有最开头的三引号注释
- 才被写入模块帮助
- 后面再有三引号注释
- 只是注释
- 不会被写到文档中
- 下面的三引号注释被忽略
- 修改 get_fruits.py
- 头部三引号注释
- 保存并写帮助网页
- :w|!python3 -m pydoc -w get_fruits
- 使用火狐打开get_fruits.html
- :!firefox get_fruits.html
- 模块帮助文档更新了
- 把文档写在代码里好吗?
- CodeAsDocumentation
- 让源代码更容易阅读和理解
- 尽量减少维护或扩展遗留系统所需的工作量
- 减少系统的用户和开发人员查阅二级文档来源的需要
- 通过自成一体的知识表征促进自动化
- 这次了解了 帮助文档的 生成
- 开头的三引号注释 可以生成 帮助文档
- 文档 可以写成网页
- python3 本身
- 也有 在线的帮助手册
- 目前的程序
- 提高了 可读性
- 有什么方法
- 可以让程序 更可读么?
- 下次再说!
- 蓝桥->https://www.lanqiao.cn/courses/3584
- github->https://github.com/overmind1980/oeasy-python-tutorial
- gitee->https://gitee.com/overmind1980/oeasypython
[oeasy]python0069_帮助手册_pydoc_manual_document的更多相关文章
- oeasy教您玩转linux010105详细手册man
详细手册 回忆上节课 我们上节课学习了使用命令来了解命令 whatis 我们通过他来发出灵魂之问 whatis到底是干什么的?
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- FREERTOS 手册阅读笔记
郑重声明,版权所有! 转载需说明. FREERTOS堆栈大小的单位是word,不是byte. 根据处理器架构优化系统的任务优先级不能超过32,If the architecture optimized ...
- JS魔法堂:不完全国际化&本地化手册 之 理論篇
前言 最近加入到新项目组负责前端技术预研和选型,其中涉及到一个熟悉又陌生的需求--国际化&本地化.熟悉的是之前的项目也玩过,陌生的是之前的实现仅仅停留在"有"的阶段而已. ...
- 转职成为TypeScript程序员的参考手册
写在前面 作者并没有任何可以作为背书的履历来证明自己写作这份手册的分量. 其内容大都来自于TypeScript官方资料或者搜索引擎获得,期间掺杂少量作者的私见,并会标明. 大部分内容来自于http:/ ...
- Redis学习手册(目录)
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
随机推荐
- JS监听DOM创建和销毁
源码 web开发指南 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=&quo ...
- Vue History模式IIS的配置补充
摘自 :https://blog.csdn.net/ssdnif/article/details/103856283 官方提供的配置<?xml version="1.0" e ...
- 改造 Kubernetes 自定义调度器
原文出处:改造 Kubernetes 自定义调度器 | Jayden's Blog (jaydenchang.top) Overview Kubernetes 默认调度器在调度 Pod 时并不关心特殊 ...
- Swift全局变量的线程安全分析
一.示例代码 import UIKit let obj = TestObj() class TestObj { init() { print("\(type(of: self)) init& ...
- C++笔记(2)拷贝构造函数
拷贝构造函数是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象. 如果在类中没有定义拷贝构造函数,编译器会自行定义一个.如果类带有指针变量,并有动态内存分配,则它必 ...
- JVM面试篇(下)
垃圾收集器 简述 Java 垃圾回收机制 在 java 中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行.在 JVM 中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行 ...
- 为什么魂斗罗只有128KB却能实现那么长的剧情有答案了
PPU 首发公号:Rand_cs 本文继续讲述 NES 的基本原理,承接上文的 CPU,本文来讲述 PPU,较为复杂,慢慢来看.例子基本都是使用的魂斗罗,看完本文相信对那问题"为什么魂斗罗只 ...
- leetcode | 107. 二叉树的层序遍历 II | javascript实现 | c++实现
题目 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 . (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 思路 题目的要求相当于是求层序遍历数组的转置,我们只需利用js的 ...
- Libgdx游戏开发(5)——碰撞反弹的简单实践
原文: Libgdx游戏开发(5)--碰撞反弹的简单实践-Stars-One的杂货小窝 本篇简单以一个小球运动,一步步实现碰撞反弹的效果 本文代码示例以kotlin为主,且需要有一定的Libgdx入门 ...
- TGI 基准测试
本文主要探讨 TGI 的小兄弟 - TGI 基准测试工具.它能帮助我们超越简单的吞吐量指标,对 TGI 进行更全面的性能剖析,以更好地了解如何根据实际需求对服务进行调优并按需作出最佳的权衡及决策.如果 ...