Python 自学不求人

2024-01-17 04:59
文章标签 python 自学 不求人

本文主要是介绍Python 自学不求人,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

自学 Python 不求人,本文介绍 Python 自学时如何获取免费权威的帮助信息。

概述

  • 如何使用 Python 自带的 help() 方法
  • 如何利用 Python 文档
  • 获取中文文档

获取帮助 help

每次进入 python 解释器的交互模式时,都会先打印横幅消息,在版本信息下面就是推荐
的命令:

Type "help", "copyright", "credits" or "license" for more information.
>>>

让我们试试:

>>> help
Type help() for interactive help, or help(object) for help about object.
>>>

提示使用 help() 进入交互式的 help,或者使用传一个对象给 help(object)

交互式 help

不带参数调用 help() 进入到 help 的交互模式:

>>> help()Welcome to Python 3.8's help utility!If this is your first time using Python, you should definitely check out
the tutorial on the Internet at https://docs.python.org/3.8/tutorial/.Enter the name of any module, keyword, or topic to get help on writing
Python programs and using Python modules.  To quit this help utility and
return to the interpreter, just type "quit".To get a list of available modules, keywords, symbols, or topics, type
"modules", "keywords", "symbols", or "topics".  Each module also comes
with a one-line summary of what it does; to list the modules whose name
or summary contain a given string such as "spam", type "modules spam".help>   <--- 开始变成 help 的提示符

这时候可以输入想要查询的任何内容,有几种特定的查询词:

  • modules,显示所有的 模块 列表

  • keywords,显示所有关键字

  • symbols, 显示所有的符号

  • topics,显示一些特定的话题,注意这些话题都是全部大写的,想要继续查询也需要输入全部大写的话题名。

help(thing)

进入交互式模式步骤较多,所以大多少情况下我们直接给 help() 传递一个参数,这个参数就是要查的 东西,比如用来查询 help 自己:

>>> help(help)
Help on _Helper in module _sitebuiltins object:class _Helper(builtins.object)|  Define the builtin 'help'.||  This is a wrapper around pydoc.help that provides a helpful message|  when 'help' is typed at the Python interactive prompt.||  Calling help() at the Python prompt starts an interactive help session.|  Calling help(thing) prints help for the python object 'thing'.||  Methods defined here:||  __call__(self, *args, **kwds)|      Call self as a function.||  __repr__(self)|      Return repr(self).||  ----------------------------------------------------------------------|  Data descriptors defined here:||  __dict__|      dictionary for instance variables (if defined)||  __weakref__|      list of weak references to the object (if defined)

这个 东西 可以是一个对象,Python 里面一切皆对象,所以它就是任何我们能用的东西(变量、函数、类、模块等),但是这里有个前提是,这个对象必须得在当前的命名空间内能访问,这才能直接用它的名字,比如 sys 模块,要导入后才能查。

会在以后讲解变量的时候详细讨论名字。

如果没有导入就会报错:

>>> help(sys)
Traceback (most recent call last):File "<stdin>", line 1, in <module>
NameError: name 'sys' is not defined

所以这种传对象的方式也不能去查关键字和符号,比如:

>>> help(def)File "<stdin>", line 1help(def)^
SyntaxError: invalid syntax>>> help(+)File "<stdin>", line 1help(+)^
SyntaxError: invalid syntax

这时候就需要把查询关键字用引号括起来作为字符串传给 help()

>>> help('sys')
>>> help('def')
>>> help('+')

help 交互模式下没有此限制

所以,help 的用法很简单,哪里不会查哪里。

help 的帮助信息里面还有关键的一句话:

This is a wrapper around pydoc.help that provides a helpful message

when 'help' is typed at the Python interactive prompt.

我们简单看下 pydoc

pydoc 模块

pydoc 是一个模块,用来从 python 模块自动生成文档(documentation)。

>>> import pydoc
>>> pydoc.help.help('sys')   # 等价 help('sys')

pydoc 提供了命令行操作,不过无法直接使用。用我们学过的 python -m 的启动方式即可:

# 在命令行中执行,不是在 python 交互环境
python -m pydoc
pydoc - the Python documentation toolpydoc <name> ...Show text documentation on something.  <name> may be the name of aPython keyword, topic, function, module, or package, or a dottedreference to a class or function within a module or module in apackage.  If <name> contains a '\', it is used as the path to aPython source file to document. If name is 'keywords', 'topics',or 'modules', a listing of these things is displayed.pydoc -k <keyword>Search for a keyword in the synopsis lines of all available modules.pydoc -n <hostname>Start an HTTP server with the given hostname (default: localhost).pydoc -p <port>Start an HTTP server on the given port on the local machine.  Portnumber 0 can be used to get an arbitrary unused port.pydoc -bStart an HTTP server on an arbitrary unused port and open a Web browserto interactively browse documentation.  This option can be used incombination with -n and/or -p.pydoc -w <name> ...Write out the HTML documentation for a module to a file in the currentdirectory.  If <name> contains a '\', it is treated as a filename; ifit names a directory, documentation is written for all the contents.

这里参数还是比较简单的,普通的使用就和 help 差不多,唯一有点亮点的是可以自动起一个 HTTP 服务器,并自动打开浏览器,显示文档的 html 页面:

python -m pydoc -b

这里需要说明的是,因为这个帮助系统是通过 module 自动生成的,所以它不仅仅是能显示 Python 标准库的帮助信息。正常安装的第三方库的帮助信息也能一起查询到。

比如说,查一下 requests:

>>> help('requests')
Help on package requests:NAMErequestsDESCRIPTIONRequests HTTP Library~~~~~~~~~~~~~~~~~~~~~Requests is an HTTP library, written in Python, for human beings. Basic GETusage:>>> import requests>>> r = requests.get('https://www.python.org')>>> r.status_code200>>> 'Python is a programming language' in r.contentTrue

Python 文档

打开 安装 Python 时自带的 .chm 帮助文档,可以看到内容非常多。

文档内容指引

文档的内容非常详尽,所以也不可能完全看完,我把它们大概分为 4 种:

  • 可以通读的:
    • 入门教程:初学者首选
    • 语言参考:进阶者必看
  • 可以选读的:
    • 标准库:里面内容是按照话题展开讨论的
    • HowTo:类似于 cookbook,里面是特定的任务
  • 日常检索(平常最多的时候是通过上面的索引栏查找关键字,有时候不清楚拿什么搜的时候可以看索引表)
    • 模块索引:
    • 术语表
    • FAQ
  • 特定目的
    • 安装配置
    • 安装包:主要就是介绍 pypi 和 venv
    • 分发包: 教你如何开发和发布自己的包
    • C 语言相关扩展

中文文档

在广大网友的帮助下,Python 文档的中文翻译也进行的不错,虽然还没有到 100% 覆盖,但是大部分还是可以的。

而且其中的内容我挑着看了些,翻译的还是很准确的。

在 Python 在线文档 里可以选择语言为 简体中文,或者直接打开 中文文档链接:

在线中文文档

看到左上角还有下载按钮:

下载中文文档

下载页面是英文的,别怕,下载下来的文档都是中文的。有 3 种格式:

  • pdf 的,细分了两种,我没看出大区别,推荐 A4

pdf 文件是按照大的一级目录划分的,所以可以单个打开,比较适合当书看。

pdf 文件列表

目录书签,还带语法高亮,还要啥自行车。

pdf 文档内容

  • html 的,每个文件都是单一的 html,文件数目比较多,不过通过浏览器打开效果和在线没区别

html 文档

  • epub 的,我想转一下到 Kindle 看效果的,结果试了几个工具都报错,有知道的小伙伴可以在评论区留言。

文章内容虽基础,整理发布不轻松

如果看过有帮助,不妨 点赞 + 关注,谢谢!

这篇关于Python 自学不求人的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/614932

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON: