从零学习
山海皆可平z
混迹于科技圈的代码小哥,有代码的事可以找我。
展开
-
总结了下Python中的列表推导式
Python里面有个很棒的语法糖(syntactic sugar),它就是 list comprehension ,有人把它翻译成“列表推导式”,也有人翻译成“列表解析式”。名字听上去很难理解,但是看它的语法就很清晰了。虽然名字叫做 list comprehension,但是这个语法同样适用于dict、set等这一系列可迭代(iterable)数据结构。1.列表推导式书写形式: [表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]out_lis.原创 2020-08-18 06:55:37 · 364 阅读 · 0 评论 -
python3从零学习-6.0、第三方库
第三方库可以在这里查询:https://pypi.org/目前已经有成千上万的三方库可供选择,这个也是python魅力吸引人的地方,有许许多多的轮子,不必每个东西都自己造轮子,可以选择合适的三方库用在项目中会变得事半功倍。如下图就是python官方网站上查询三方库的界面,看这个数字就知道这是一门具有浓重的有历史气息的语言。安装第三方模块在Python中,安装第三方模块,是通过setuptools这个工具完成的。Python有两个封装了setuptools的包管理工具:easy_install原创 2020-07-16 10:56:37 · 746 阅读 · 0 评论 -
python3从零学习-5.11.5、chunk - 读取 IFF 分块数据
源代码: Lib/chunk.py本模块提供了一个读取使用 EA IFF 85 分块的数据的接口chunks.这种格式使用的场合有 Audio Interchange File Format (AIFF/AIFF-C) 和 Real Media File Format (RMFF) 等。 与它们密切相关的 WAVE 音频文件也可使用此模块来读取。一个chunk具有以下结构:ID是一个4字节的字符串,用于标识块的类型。大小字段(32 位的值,使用大端字节序编码)给出分块数据的大小,原创 2020-07-02 09:10:07 · 550 阅读 · 0 评论 -
python3从零学习-5.11.4、 wave - 读写WAV格式文件
源代码: Lib/wave.pywave 模块提供了一个处理 WAV 声音格式的便利接口。它不支持压缩/解压,但是支持单声道/立体声。wave 模块定义了以下函数和异常:wave.open(file, mode=None)如果 file 是一个字符串,打开对应文件名的文件。否则就把它作为文件类对象来处理。mode 可以为以下值:'rb' :只读模式。'wb':只写模式。注意:不支持同时读写WAV文件。mode 设为 'rb' 时返回一个 Wave_read 对象,.原创 2020-07-02 09:08:27 · 1000 阅读 · 0 评论 -
python3从零学习-5.11.3、 sunau - 读写 Sun AU 文件
源代码:Lib/sunau.pysunau 模拟提供了一个处理 Sun AU 声音格式的便利接口。请注意此模块与 aifc和wave 是兼容接口的。音频文件由标头和数据组成。标头的字段为: 域 目录 magic word 四个字节.snd header size 标头的大小,包括信息,以字节为单位。 data size 数...原创 2020-07-01 09:11:51 · 237 阅读 · 0 评论 -
python3从零学习-5.11.2、 aifc - 读取和写入AIFF和aifc文件
源代码:Lib / aifc.py这个模块提供了对读写AIFF和AIFF- c文件的支持。AIFF是一种音频交换文件格式,用于在文件中存储数字音频样本。AIFF-C是该格式的更新版本,它包含了压缩音频数据的能力。音频文件有许多描述音频数据的参数。采样率或帧率是声音每秒被采样的次数。频道的数量表明,如果音频是单声道,立体声,或quadro。每个帧由每个通道一个样本组成。样本大小是以字节为单位的每个样本的大小。因此,一个帧由nchannels *采样字节组成,而一秒钟的音频由nchannels.原创 2020-07-01 09:00:24 · 704 阅读 · 0 评论 -
python3从零学习-5.11.1、 audioop—操作原始音频数据
audioop模块包含一些对声音片段的有用操作。它对声音片段进行操作,这些声音片段由8、16、24或32位宽的带符号整数样本组成,存储在类似字节的对象中。除非另有指定,否则所有标量项都是整数。在3.4版更改:支持24位样品了。所有函数现在都接受任何字节类对象。字符串输入现在会立即导致错误。本模块支持a-LAW、u-LAW和Intel/DVI ADPCM编码。一些更复杂的操作只使用16位样本,否则样本大小(以字节为单位)始终是操作的一个参数。模块定义了以下变量...原创 2020-06-30 15:16:17 · 1450 阅读 · 0 评论 -
python3从零学习-5.10.11、 uuid—UUID 对象
源代码: Lib/uuid.py这个模块提供了不可变的UUID对象(UUID类)和函数uuid1()、uuid3()、uuid4()、uuid5(),用于生成RFC 4122中指定的版本1、3、4和5 UUID。如果您想要的只是一个唯一的ID,那么可能应该调用uuid1()或uuid4()。注意,uuid1()可能会损害隐私,因为它创建了一个包含计算机网络地址的UUID。uuid4()创建一个随机的UUID。class uuid.UUID(hex=None, bytes=None..原创 2020-06-29 09:13:08 · 466 阅读 · 0 评论 -
python3从零学习-5.10.9、ftplib—FTP 协议客户端
源代码: Lib/ftplib.py这个模块定义类FTP和一些相关项。FTP类实现FTP协议的客户端。您可以使用它编写Python程序来执行各种自动FTP作业,比如镜像其他FTP服务器。模块urllib也使用它。请求处理使用FTP的url。有关FTP(文件传输协议)的更多信息,请参见Internet RFC 959。下面是一个使用ftplib模块的示例会话:>>> from ftplib import FTP>>> ftp = FTP('ftp..原创 2020-06-28 15:43:02 · 339 阅读 · 0 评论 -
python3从零学习-5.10.7、http — HTTP 模块
源代码: Lib/http/__init__.pyhttp 是一个包,它收集了多个用于处理超文本传输协议的模块:http.client 是一个低层级的 HTTP 协议客户端;对于高层级的 URL 访问请使用 urllib.requesthttp.server 包含基于 socketserver 的基本 HTTP 服务类http.cookies 包含一些有用来实现通过 cookies 进行状态管理的工具http.cookiejar 提供了 cookies 的持...原创 2020-06-24 13:04:43 · 287 阅读 · 0 评论 -
python3从零学习-5.10.6、urllib.request 引发的异常类
源代码: Lib/urllib/error.pyurllib.error 模块为 urllib.request 所引发的异常定义了异常类。 基础异常类是 URLError。下列异常会被 urllib.error 按需引发:exception urllib.error.URLError处理程序在遇到问题时会引发此异常(或其派生的异常)。 它是 OSError 的一个子类。reason此错误的原因。它可以是一个消息字符串或另一个异常实例。在 3.3 版更改: URLError 已被设原创 2020-06-23 13:26:14 · 166 阅读 · 0 评论 -
python3从零学习-5.10.5、urllib—URL 处理模块
源代码: Lib/urllib/urllib 是一个收集了多个用到 URL 的模块的包:urllib.request 打开和读取 URLurllib.error 包含 urllib.request 抛出的异常urllib.parse 用于解析 URLurllib.robotparser 用于解析 robots.txt 文件源码: Lib/urllib/request.pyurllib.request 模块定义了适用于在各种复杂情况下打开 URL(主要为 HTTP)的函数和类原创 2020-06-23 13:24:15 · 237 阅读 · 0 评论 -
python3从零学习-5.10.4、wsgiref—WSGI实用程序和参考实现
wsgiref — WSGI实用程序和参考实现Web服务器网关接口(WSGI)是用Python编写的Web服务器软件和Web应用程序之间的标准接口。有了标准的接口,就可以很容易地将支持WSGI的应用程序与许多不同的web服务器一起使用。只有web服务器和编程框架的作者才需要了解WSGI设计的每一个细节和细节。仅仅为了安装WSGI应用程序或使用现有框架编写web应用程序,您不需要了解WSGI的每个细节。wsgiref是WSGI规范的一个参考实现,可用于向web服务器或框架添加WSG..原创 2020-06-22 10:54:38 · 352 阅读 · 0 评论 -
python3从零学习-5.10.3、cgitb—用于 CGI 脚本的回溯管理器
源代码: Lib/cgitb.pycgitb 模块提供了用于 Python 脚本的特殊异常处理程序。 (这个名称有一点误导性。 它最初是设计用来显示 HTML 格式的 CGI 脚本详细回溯信息。 但后来被一般化为也可显示纯文本格式的回溯信息。) 激活这个模块之后,如果发生了未被捕获的异常,将会显示详细的已格式化的报告。 报告显示内容包括每个层级的源代码摘录,还有当前正在运行的函数的参数和局部变量值,以帮助你调试问题。 你也可以选择将此信息保存至文件而不是将其发送至浏览器。要启用此特性,只需简单地将此原创 2020-06-22 10:28:32 · 538 阅读 · 0 评论 -
python3从零学习-5.10.2、cgi—通用网关接口
概述HTTP服务器调用CGI脚本,通常用于处理通过HTML <FORM>或<ISINDEX>元素提交的用户输入。通常,CGI脚本存在于服务器的特殊CGI -bin目录中。HTTP服务器将关于请求的各种信息放在脚本的shell环境中,执行脚本,并将脚本的输出发送回客户机。脚本的输入也连接到客户端,有时表单数据也是这样读取的;其他时候,表单数据通过URL的“查询字符串”部分传递。此模块旨在处理不同的情况,并为Python脚本提供更简单的接口。它...原创 2020-06-19 12:36:42 · 335 阅读 · 0 评论 -
python3从零学习-5.10.1、webbrowser—方便的Web浏览器控制器
webbrowser 模块提供了一个高级接口,允许向用户显示基于Web的文档。 在大多数情况下,只需从该模块调用 open() 函数就可以了。在 Unix 下,图形浏览器在 X11 下是首选,但如果图形浏览器不可用或 X11 显示不可用,则将使用文本模式浏览器。 如果使用文本模式浏览器,则调用进程将阻塞,直到用户退出浏览器。如果存在环境变量 BROWSER ,则将其解释为 os.pathsep 分隔的浏览器列表,以便在平台默认值之前尝试。 当列表部分的值包含字符串 %s 时,它被解释为一个.原创 2020-06-18 11:29:02 · 643 阅读 · 0 评论 -
macOS Catalina10.15.5 pyenv python3.6.6 安装tkinter
昨天帮人看了一个界面小程序代码,是用python写的,用的是tkinter库。我是macOS Catalina10.15.5,我python是3.6.6用的是pyenv安装的虚拟环境。导入tkinter库的时候出现了错误“ModuleNotFoundError: No module named ‘_tkinter”,凭直觉就用“pip install tkinter”,发现不行,找不到这个库,说明不能这样安装。后来找了python官方资料,有个tcl-tk库,所以先下载这个库。ActiveTcl 下载地原创 2020-06-18 10:22:06 · 553 阅读 · 0 评论 -
python3从零学习-5.9.2、XML处理模块
源码:Lib/xml/用于处理XML的Python接口分组在xml包中。警告:XML 模块对于错误或恶意构造的数据是不安全的。 如果需要解析不受信任或未经身份验证的数据,请参阅XML 漏洞和defusedxml 和 defusedexpat 软件包部分。值得注意的是xml包中的模块要求至少有一个 SAX 兼容的 XML 解析器可用。在 Pythonm中包含 Expat 解析器,因此xml.parsers.expat模块将始终可用。xml.dom和xml.sax包的...原创 2020-06-16 09:27:09 · 333 阅读 · 0 评论 -
python3从零学习-5.8.4、mmap—内存映射文件支持
mmap — 内存映射文件支持内存映射(mmap)文件对象的行为既像 bytearray 又像 文件对象。 你可以在大部分接受 bytearray 的地方使用 mmap 对象;例如,你可以使用 re 模块来搜索一个内存映射文件。 你也可以通过执行 obj[index] = 97 来修改单个字节,或者通过对切片赋值来修改一个子序列: obj[i1:i2] = b'...'。 你还可以在文件的当前位置开始读取和写入数据,并使用 seek() 前往另一个位置。内存映射文件是由 mmap 构造函数.原创 2020-06-15 10:45:19 · 632 阅读 · 0 评论 -
python3从零学习-5.8.3、selectors—高级 I/O 复用库
源码:Lib/selectors.py概述这个模块允许高级和高效的I/O多路复用,建立在选择模块原语之上。鼓励用户使用此模块,除非他们希望对所使用的os级原语进行精确控制。它定义了一个BaseSelector抽象基类,以及几个具体的实现(KqueueSelector,EpollSelector…),可以用于在多个文件对象上等待I/O就绪通知。在下文“文件对象”指任何具有fileno()方法或原始文件描述符的对象。DefaultSelector是当前平台上可用的最有效实...原创 2020-06-13 15:13:54 · 303 阅读 · 0 评论 -
python3从零学习-5.8.2、select — Waiting for I/O 完成
该模块提供了对select()和poll()函数的访问,这些函数在大多数操作系统中是可用的。在 Solaris 及其衍生版本上可用devpoll(),在 Linux 2.5+ 上可用epoll(),在大多数 BSD 上可用kqueue()。注意,在 Windows 上,本模块仅适用于套接字;在其他操作系统上,本模块也适用于其他文件类型(特别地,在 Unix 上也适用于管道)。本模块不能用于常规文件,不能检测出(自上次读取文件后)文件是否有新数据写入。select.devpoll()(仅支...原创 2020-06-12 10:34:11 · 392 阅读 · 0 评论 -
python3从零学习-5.8.1、socket—底层网络接口
源代码: Lib/socket.py这个模块提供了访问BSD*套接字*的接口。在所有现代Unix系统、Windows、macOS和其他一些平台上可用。这个Python接口是用Python的面向对象风格对Unix系统调用和套接字库接口的直译:函数 socket() 返回一个 套接字对象 ,其方法是对各种套接字系统调用的实现。形参类型一般与C接口相比更高级:例如在Python文件 read() 和 write() 操作中,接收操作的缓冲区分配是自动的,发送操作的缓冲区长度是隐式的。常量A原创 2020-06-12 09:59:38 · 513 阅读 · 0 评论 -
python3从零学习-5.7.5、uu—对 uuencode 文件进行编码与解码
源代码: Lib/uu.py此模块使用 uuencode 格式来编码和解码文件,以便任意二进制数据可通过仅限 ASCII 码的连接进行传输。 在任何要求文件参数的地方,这些方法都接受文件类对象。 为了保持向下兼容,也接受包含路径名称的字符串,并且将打开相应的文件进行读写;路径名称 '-' 被解读为标准输入或输出。 但是,此接口已被弃用;在 Windows 中调用者最好是自行打开文件,并在需要时确保模式为 'rb' or 'wb'。此代码由 Lance Ellinghouse 贡献,并由 Jack原创 2020-06-08 09:55:59 · 860 阅读 · 0 评论 -
python3从零学习-5.7.4、quopri编码与解码经过MIME转码打印数据
源代码: Lib/quopri.py此模块会执行转换后可打印的传输编码与解码。 转换后可打印的编码格式被设计用于只包含相对较少的不可打印字符的数据;如果存在大量这样的字符,通过 base64 模块所提供的 base64 编码方案会更为紧凑,例如当发送图片文件时。quopri.decode(input, output, header=False)解码 input 文件的内容并将已解码二进制数据结果写入 output 文件。 input 和 output 必须为 二进制文件对象。 如果提供了可选参原创 2020-06-08 09:54:56 · 408 阅读 · 0 评论 -
python3从零学习-5.7.3、binascii—二进制和 ASCII 码互转
binascii 模块包含很多在二进制和二进制表示的各种ASCII码之间转换的方法。 通常情况不会直接使用这些函数,而是使用像 uu , base64 ,或 binhex 这样的封装模块。 为了执行效率高,binascii 模块含有许多用 C 写的低级函数,这些底层函数被一些高级模块所使用。binascii 模块定义了以下函数:binascii.a2b_uu(string)将单行 uu 编码数据转换成二进制数据并返回。uu 编码每行的数据通常包含45 个(二进制)字节,最后一行除外。每行数.原创 2020-06-05 09:02:18 · 2129 阅读 · 0 评论 -
python3从零学习-5.7.2、binhex—对binhex4文件进行编码和解码
源代码: Lib/binhex.py此模块以binhe4格式对文件进行编码和解码,该格式允许Macintosh文件以ASCII格式表示。仅处理数据分支。binhex 模块定义了以下功能:binhex.binhex(input, output)将带有文件名 输入 的二进制文件转换为binhex文件 输出 。输出参数可以是文件名或类文件对象( write() 和 close() 方法的任何对象)。binhex.hexbin(input, output)解码binhex文件输入..原创 2020-06-04 14:20:17 · 561 阅读 · 0 评论 -
python3从零学习-5.7.1、base64模块
源代码: Lib/base64.py此模块提供了将二进制数据编码为可打印的 ASCII 字符以及将这些编码解码回二进制数据的函数。它为 RFC 3548 指定的 Base16, Base32 和 Base64 编码以及已被广泛接受的 Ascii85 和 Base85 编码提供了编码和解码函数。RFC 3548 编码的目的是使得二进制数据可以作为电子邮件的内容正确地发送,用作 URL 的一部分,或者作为 HTTP POST 请求的一部分。其中的编码算法和 uuencode 程序是不同的。.原创 2020-06-03 11:13:02 · 363 阅读 · 0 评论 -
python3从零学习-5.6.8、multiprocessing进程模块
源代码 Lib/multiprocessing/multiprocessing 是一个用与 threading 模块相似API的支持产生进程的包。 multiprocessing 包同时提供本地和远程并发,使用子进程代替线程,有效避免 Global Interpreter Lock 带来的影响。因此, multiprocessing 模块允许程序员充分利用机器上的多个核心。Unix 和 Windows 上都可以运行。multiprocessing 模块还引入了在 threading 模块中没有类原创 2020-06-02 09:23:32 · 345 阅读 · 0 评论 -
python3从零学习-5.6.6、platform — 获取底层平台的标识数据
源代码: Lib/platform.py跨平台platform.architecture(executable=sys.executable, bits='', linkage='')查询给定的可执行文件(默认为Python解释器二进制文件)以获得各种体系结构信息。返回一个元组(位、链接),其中包含有关位体系结构和用于可执行文件的链接格式的信息。两个值都作为字符串返回。platform.machine()返回机器类型,例如。“i386”。如果不能确定值,则返回一个空字符串。..原创 2020-05-29 15:29:24 · 365 阅读 · 0 评论 -
python3从零学习-5.6.5、errno — Standard errno system symbols
这个模块提供了标准的errno系统符号。每个符号的值都是对应的整数值。 errno.errorcode Dictionary提供从errno值到底层系统中的字符串名称的映射。 在下面的列表中,当前平台上不使用的符号不是由模块定义的。已定义符号的特定列表可以作为errno.errorcode.keys()获得。可用的符号包括: errno.EPERM Operation not permitted...原创 2020-05-29 15:26:20 · 367 阅读 · 0 评论 -
python3从零学习-5.6.4、日志标准库logging
源代码:Lib/logging/__init__.pyclass logging.Logger propagate 如果这个属性为真,记录到这个记录器的事件将会传递给这个高级别管理器的记录器(原型),此外任何关联到这个记录器的管理器。消息会直接传递给原型记录器的管理器 - 既不是这个原型记录器的级别也不是过滤器是在考虑的问题。 如果等于假,记录消息将不会传递给这个原型记录器的管理器。 构造器将这个属性初始化为 True。...原创 2020-05-29 15:24:02 · 163 阅读 · 0 评论 -
python3从零学习-5.6.3、getpass — 便携式密码输入工具
源代码: Lib/getpass.pygetpass 模块提供了两个函数:getpass.getpass(prompt='Password: ', stream=None)提示用户输入一个密码且不会回显。 用户会看到字符串 prompt 作为提示,其默认值为 'Password: '。 在 Unix 上,如有必要提示会使用替换错误句柄写入到文件类对象 stream。 stream 默认指向控制终端 (/dev/tty),如果不可用则指向 sys.stderr (此参数在 Windows 上.原创 2020-05-29 15:17:38 · 286 阅读 · 0 评论 -
python3从零学习-5.6.2、io.py模块
源代码: Lib/io.pyio.DEFAULT_BUFFER_SIZE包含模块缓冲 I/O 类使用的默认缓冲区大小的 int。 在可能的情况下 open() 将使用文件的 blksize(由 os.stat() 获得)。io.open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)这是内置的 open() 函数的别名。 ..原创 2020-05-29 15:15:19 · 321 阅读 · 0 评论 -
python3从零学习-5.6.1、os.py模块
源代码:Lib/os.py进程:os.environ一个表示字符串环境的mapping 对象。os.environb字节版本的 environ:一个以字节串表示环境的 mapping对象。os.getenv(key,default=None)如果存在,返回环境变量key的值,否则返回default。key,default和返回值均为 str 字符串类型。os.getenvb(key,default=None)如果存在环境变...原创 2020-05-25 10:42:24 · 261 阅读 · 0 评论 -
python3从零学习-5.5.4、xdrlib — 编码与解码 XDR 数据
源代码:Lib/xdrlib.pyxdrlib模块为外部数据表示标准提供支持,该标准的描述见RFC 1014,由 Sun Microsystems, Inc. 在 1987 年 6 月撰写。 它支持该 RFC 中描述的大部分数据类型。xdrlib模块定义了两个类,一个用于将变量打包为 XDR 表示形式,另一个用于从 XDR 表示形式解包。 此外还有两个异常类。 classxdrlib.Packer Packer是用于将数据打包为 XDR 表示形式的类。Packer类的实例化...原创 2020-05-16 17:00:34 · 632 阅读 · 0 评论 -
python3从零学习-5.5.3、netrc 文件处理
源代码:Lib/netrc.pynetrc类解析并封装了 Unix 的ftp程序和其他 FTP 客户端所使用的 netrc 文件格式。 classnetrc.netrc([file]) netrc实例或子类实例封装来自netrc文件的数据。初始化参数(如果存在)指定要解析的文件。如果没有给出参数,将读取用户主目录中的.netrc文件。解析错误将引发带有诊断信息的NetrcParseError,这些诊断信息包括文件名、行号和终止令牌。POSIX系统如果没有指定参数,. netrc文件中...原创 2020-05-15 13:17:57 · 333 阅读 · 0 评论 -
python3从零学习-5.5.2、configparser — 配置文件解析器
源代码:Lib/configparser.py此模块提供了它实现一种基本配置语言ConfigParser类,这种语言所提供的结构与 Microsoft Windows INI 文件的类似。 你可以使用这种语言来编写能够由最终用户来自定义的 Python 程序。让我们准备一个非常基本的配置文件,它看起来是这样的:[DEFAULT]ServerAliveInterval = 45Compression = yesCompressionLevel = 9ForwardX11 = ...原创 2020-05-15 13:17:39 · 284 阅读 · 0 评论 -
python3从零学习-5.5.1、CSV 文件读写
源代码:Lib/csv.py模块内容csv模块定义了以下函数: csv.reader(csvfile,dialect='excel',**fmtparams) 返回一个 reader 对象,该对象将逐行遍历csvfile。csvfile可以是任何对象,只要这个对象支持iterator协议并在每次调用__next__()方法时都返回字符串,文件对象和列表对象均适用。如果csvfile是文件对象,则打开它时应使用newline=''。1可选参数d...原创 2020-05-15 13:14:24 · 285 阅读 · 0 评论 -
python3从零学习-5.4.10、shutil — 高阶文件操作
源代码:Lib/shutil.pyshutil模块提供了一系列对文件和文件集合的高阶操作。 特别是提供了一些支持文件拷贝和删除的函数。 对于单个文件的操作,请参阅os模块。警告即便是高阶文件拷贝函数 (shutil.copy(),shutil.copy2()) 也无法拷贝所有的文件元数据。在 POSIX 平台上,这意味着将丢失文件所有者和组以及 ACL 数据。 在 Mac OS 上,资源钩子和其他元数据不被使用。 这意味着将丢失这些资源并且文件类型和创建者代码将不正确。 在 Wi...原创 2020-05-15 13:10:37 · 239 阅读 · 0 评论 -
python3从零学习-5.4.9、linecache — 随机读写文本行
源代码:Lib/linecache.py linecache模块允许从一个 Python 源文件中获取任意的行,并会尝试使用缓存进行内部优化,常应用于从单个文件读取多行的场合。 此模块被traceback模块用来提取源码行以便包含在格式化的回溯中。tokenize.open()函数被用于打开文件。 此函数使用tokenize.detect_encoding()来获取文件的编码格式;如果未指明编码格式,则默认编码为 UTF-8。linecache模块定义了下列函数:...原创 2020-05-14 10:29:56 · 283 阅读 · 0 评论