zoukankan      html  css  js  c++  java
  • [学习笔记] Python标准库的学习准备 [转]

    Python标准库是Python强大的动力所在,我们已经在前文中有所介绍。由于标准库所涉及的应用很广,所以需要学习一定的背景知识。

    硬件原理

    这一部份需要了解内存,CPU,磁盘存储以及IO的功能和性能,了解计算机工作的流程,了解指令的概念。这些内容基础而重要。

    Python标准库的一部份是为了提高系统的性能(比如mmap),所以有必要了解基本的计算机各个组成部分的性能。

    操作系统

    在了解操作系统时,下面是重点:

    1) 操作系统的进程管理,比如什么是UID, PID, daemon

    2) 进程之间的信号通信,比如使用kill传递信号的方式

    学习进程相关的内容,是为了方便于学习os包,thread包,multiprocessing包,signal包

    3) 文件管理,文件的几种类型。

    4) 文件读写(IO)接口

    5) 文件的权限以及其它的文件信息(meta data)

    6) 常用系统命令以及应用,比如ls, mv, rm, mkdir, chmod, zip, tar..., 

    学习文件相关的内容,,是为了学习os包, shutil包中文件管理相关的部分。学习文件接口对于文本输入输出的理解很重要,也会影响到对于socket包, select包概念的理解。此外,python中的归档(archive)和压缩(compress)功能也和操作系统中的类似。

    7) Linux shell,比如说file name matching,对于理解glob包等有帮助。如果你对Linux的正则表达(regular expression)有了解的话,python的正则表达的学习会变得比较容易。学习Linux命令行中的参数传递对于理解python标准库中解析命令行的包也是有用的。

    网络

    Python的一大应用是在网络方面。但Python和标准库只是提供了接口,并不涉及底层。网络知识可以大大降低学习曲线的陡度。

    1) TCP/IP的基础的分层架构。这方面的内容太广博了,所以可以有选择地了解骨干知识。

    2) 常用的应用层协议,比如http, 以及邮件相关的协议,特别是它们的工作过程。

    3) 根据需要,了解html/css/javascript/jQuery/frame等

    如果想利用python建服务器,比如在google app engine上,这些知识是需要的。

    算法与数据结构

    标准库中定义有一些数据对象的封装。因此,你并不需要重头编写它们。相关数据结构的应用需要一些数据结构的知识,比如队列,树等。

    标准库中已经实现了许多算法,比如排序等,可以方便的调用。算法的基础知识可以帮助你做决定。

    数据库

    Python中内置了sqlite3。如果你只需要一个简单的数据库,可以直接从标准库中调用sqlite3。

    当使用Python中数据库相关的包时(比如sqlite3),需要对数据库,特别是关系型数据库,有一个基本了解。

    加密和文本编码

    Python的加密算法同样基于一些经典加密算法,比如MD5,RSA算法。加密的基本知识将很有帮助。

    使用非ASCII编码,比如中文时,文本编码的知识很重要。

    总结 

    Python基本的对象概念和动态类型概念。可以参照快速教程,并尝试阅读更多的资料和源码,来加深对概念的理解。Python标准库学习的难度在于背景知识。一个了解相关背景知识(或者其它语言的库)的程序员,可以在很短的时间内掌握Python基础库。

  • 相关阅读:
    sqlserver中判断表或临时表是否存在
    Delphi 简单方法搜索定位TreeView项
    hdu 2010 水仙花数
    hdu 1061 Rightmost Digit
    hdu 2041 超级楼梯
    hdu 2012 素数判定
    hdu 1425 sort
    hdu 1071 The area
    hdu 1005 Number Sequence
    hdu 1021 Fibonacci Again
  • 原文地址:https://www.cnblogs.com/Felixdh/p/3818105.html
Copyright © 2011-2022 走看看