为大家整理的Python语法速览与实战清单,请注意查收!

基础语法

Python 是一门高阶、动态类型的多范式编程语言;定义 Python 文件的时候我们往往会先声明文件编码方式:

为大家整理的Python语法速览与实战清单,请注意查收!

人生苦短,请用 Python,大量功能强大的语法糖的同时让很多时候 Python 代码看上去有点像伪代码。譬如我们用 Python 实现的简易的快排相较于 Java 会显得很短小精悍:

为大家整理的Python语法速览与实战清单,请注意查收!

控制台交互

可以根据 name 关键字来判断是否是直接使用 python 命令执行某个脚本,还是外部引用;Google 开源的 fire 也是不错的快速将某个类封装为命令行工具的框架:

为大家整理的Python语法速览与实战清单,请注意查收!

Python 2 中 print 是表达式,而 Python 3 中 print 是函数;如果希望在 Python 2 中将 print 以函数方式使用,则需要自定义引入:

from future import print_function

我们也可以使用 pprint 来美化控制台输出内容:

为大家整理的Python语法速览与实战清单,请注意查收!

模块

Python 中的模块(Module)即是 Python 源码文件,其可以导出类、函数与全局变量;当我们从某个模块导入变量时,函数名往往就是命名空间(Namespace)。而 Python 中的包(Package)则是模块的文件夹,往往由 init.py 指明某个文件夹为包:

为大家整理的Python语法速览与实战清单,请注意查收!

Package 可以为某个目录下所有的文件设置统一入口:

为大家整理的Python语法速览与实战清单,请注意查收!

表达式与控制流

条件选择

Python 中使用 if、elif、else 来进行基础的条件选择操作:

为大家整理的Python语法速览与实战清单,请注意查收!

Python 同样支持 ternary conditional operator:

a if condition else b

也可以使用 Tuple 来实现类似的效果:

为大家整理的Python语法速览与实战清单,请注意查收!

循环遍历

for-in 可以用来遍历数组与字典:

为大家整理的Python语法速览与实战清单,请注意查收!

如果我们希望使用数字序列进行遍历,可以使用 Python 内置的 range 函数:

为大家整理的Python语法速览与实战清单,请注意查收!

基本数据类型

可以使用内建函数进行强制类型转换(Casting):

为大家整理的Python语法速览与实战清单,请注意查收!

Number: 数值类型

为大家整理的Python语法速览与实战清单,请注意查收!

布尔类型

Python 提供了常见的逻辑操作符,不过需要注意的是 Python 中并没有使用 &&、|| 等,而是直接使用了英文单词。

为大家整理的Python语法速览与实战清单,请注意查收!

String: 字符串

Python 2 中支持 Ascii 码的 str() 类型,独立的 unicode() 类型,没有 byte 类型;而 Python 3 中默认的字符串为 utf-8 类型,并且包含了 byte 与 bytearray 两个字节类型:

为大家整理的Python语法速览与实战清单,请注意查收!

Python 字符串支持分片、模板字符串等常见操作:

为大家整理的Python语法速览与实战清单,请注意查收!
为大家整理的Python语法速览与实战清单,请注意查收!
为大家整理的Python语法速览与实战清单,请注意查收!

如果需要判断是否包含某个子字符串,或者搜索某个字符串的下标:

为大家整理的Python语法速览与实战清单,请注意查收!

Regex: 正则表达式

为大家整理的Python语法速览与实战清单,请注意查收!

下面列举了常见的表达式使用场景:

为大家整理的Python语法速览与实战清单,请注意查收!

集合类型

List: 列表

Operation: 创建增删

list 是基础的序列类型:

为大家整理的Python语法速览与实战清单,请注意查收!

可以使用 append 与 extend 向数组中插入元素或者进行数组连接

为大家整理的Python语法速览与实战清单,请注意查收!

可以使用 pop、slices、del、remove 等移除列表中元素:

为大家整理的Python语法速览与实战清单,请注意查收!

Iteration: 索引遍历

你可以使用基本的 for 循环来遍历数组中的元素,就像下面介个样纸:

为大家整理的Python语法速览与实战清单,请注意查收!

如果你在循环的同时也希望能够获取到当前元素下标,可以使用 enumerate 函数:

为大家整理的Python语法速览与实战清单,请注意查收!

Python 也支持切片(Slices):

为大家整理的Python语法速览与实战清单,请注意查收!

Comprehensions: 变换

Python 中同样可以使用 map、reduce、filter,map 用于变换数组:

为大家整理的Python语法速览与实战清单,请注意查收!

reduce 用于进行归纳计算:

为大家整理的Python语法速览与实战清单,请注意查收!

filter 则可以对数组进行过滤:

为大家整理的Python语法速览与实战清单,请注意查收!

字典类型

创建增删

为大家整理的Python语法速览与实战清单,请注意查收!

如果需要合并两个或者多个字典类型:

为大家整理的Python语法速览与实战清单,请注意查收!

索引遍历

可以根据键来直接进行元素访问:

为大家整理的Python语法速览与实战清单,请注意查收!

可以使用 for-in 来遍历数组:

为大家整理的Python语法速览与实战清单,请注意查收!

其他序列类型

集合

为大家整理的Python语法速览与实战清单,请注意查收!

函数

函数定义

Python 中的函数使用 def 关键字进行定义,譬如:

为大家整理的Python语法速览与实战清单,请注意查收!

Python 支持运行时创建动态函数,也即是所谓的 lambda 函数:

为大家整理的Python语法速览与实战清单,请注意查收!

参数

Option Arguments: 不定参数

为大家整理的Python语法速览与实战清单,请注意查收!

生成器

为大家整理的Python语法速览与实战清单,请注意查收!

装饰器

装饰器是非常有用的设计模式:

为大家整理的Python语法速览与实战清单,请注意查收!

类与对象

类定义

Python 中对于类的定义也很直接:

为大家整理的Python语法速览与实战清单,请注意查收!
为大家整理的Python语法速览与实战清单,请注意查收!

Managed Attributes: 受控属性

为大家整理的Python语法速览与实战清单,请注意查收!

类方法与静态方法

为大家整理的Python语法速览与实战清单,请注意查收!

对象

实例化

属性操作

Python 中对象的属性不同于字典键,可以使用点运算符取值,直接使用 in 判断会存在问题:

为大家整理的Python语法速览与实战清单,请注意查收!

建议使用 hasattr、getattr、setattr 这种方式对于对象属性进行操作:

为大家整理的Python语法速览与实战清单,请注意查收!

异常与测试

异常处理

Context Manager - with

with 常用于打开或者关闭某些资源:

为大家整理的Python语法速览与实战清单,请注意查收!

单元测试

为大家整理的Python语法速览与实战清单,请注意查收!

存储

文件读写

路径处理

Python 内置的 file 关键字会指向当前文件的相对路径,可以根据它来构造绝对路径,或者索引其他文件:

为大家整理的Python语法速览与实战清单,请注意查收!

可以使用 listdir、walk、glob 模块来进行文件枚举与检索:

为大家整理的Python语法速览与实战清单,请注意查收!

简单文件读写

为大家整理的Python语法速览与实战清单,请注意查收!

复杂格式文件

JSON

为大家整理的Python语法速览与实战清单,请注意查收!

XML

我们可以使用 lxml 来解析与处理 XML 文件,本部分即对其常用操作进行介绍。lxml 支持从字符串或者文件中创建 Element 对象:

为大家整理的Python语法速览与实战清单,请注意查收!

其提供了迭代器以对所有元素进行遍历:

为大家整理的Python语法速览与实战清单,请注意查收!

lxml 支持以 XPath 查找元素,不过需要注意的是,XPath 查找的结果是数组,并且在包含命名空间的情况下,需要指定命名空间:

为大家整理的Python语法速览与实战清单,请注意查收!

lxml 提供了 insert、append 等方法进行元素操作:

为大家整理的Python语法速览与实战清单,请注意查收!

Excel

可以使用 xlrd 来读取 Excel 文件,使用 xlsxwriter 来写入与操作 Excel 文件

为大家整理的Python语法速览与实战清单,请注意查收!
为大家整理的Python语法速览与实战清单,请注意查收!

文件系统

对于高级的文件操作,我们可以使用 Python 内置的 shutil

为大家整理的Python语法速览与实战清单,请注意查收!

网络交互

Requests

Requests 是优雅而易用的 Python 网络请求库:

为大家整理的Python语法速览与实战清单,请注意查收!

数据存储

MySQL

为大家整理的Python语法速览与实战清单,请注意查收!
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,324评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,356评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,328评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,147评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,160评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,115评论 1 296
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,025评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,867评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,307评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,528评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,688评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,409评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,001评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,657评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,811评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,685评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,573评论 2 353

推荐阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,744评论 0 10
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,180评论 0 3
  • 2018-4-25 亲爱的老公,因为儿子的事情,你发了很大的火,我们都要静下来心来冷静处理,慢慢引导,相信儿子会醒...
    美丽心情_a8bf阅读 91评论 0 1
  • 这个题目挺俗的,自己也没写过,就想着最近也不忙,想把做过的一点事情写一写放到网上,或许能对别人有帮助,也或许能因为...
    雪山会阅读 311评论 0 0
  • 2017/2/19【打卡】12#夏天第290天 1.记录✅上午陪孩子打羽毛球,孩子姿态太放松,看着旁边一个小女孩全...
    Grit888阅读 144评论 0 0