前言

基础语法

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

(文末送读者福利)


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

控制台交互

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

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

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

模块

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

(文末送读者福利)


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

表达式与控制流

条件选择

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


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

Python 同样支持 ternary conditional operator:

a if condition else b

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

循环遍历

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


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

基本数据类型

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


Number: 数值类型

布尔类型

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

String: 字符串

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


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




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

Regex: 正则表达式


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

集合类型

List: 列表

Operation: 创建增删

list 是基础的序列类型:


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

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

Iteration: 索引遍历

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


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


Python 也支持切片(Slices):

Comprehensions: 变换

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


reduce 用于进行归纳计算:


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

字典类型

创建增删


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


索引遍历

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


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


其他序列类型

集合

函数

函数定义

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


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

参数

Option Arguments: 不定参数


生成器

装饰器

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

类与对象

类定义

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



Managed Attributes: 受控属性


类方法与静态方法


对象

实例化

属性操作

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

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

异常与测试

异常处理

Context Manager - with

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


单元测试

存储

文件读写

路径处理

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


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

简单文件读写

复杂格式文件

JSON

XML

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


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


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


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

Excel

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


文件系统

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

网络交互

Requests

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

数据存储

MySQL


好啦,以上就是我的全部分享,如果你跟我一样都喜欢python,也在学习python的道路上奔跑,欢迎和我一起学习,我也分享了一些python免费课程,共同交流学习,让学习变(编)成(程)一种习惯!

读者福利:知道你对Python感兴趣,便准备了这套python学习资料,

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

包括:Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等教程。带你从零基础系统性的学好Python!

零基础Python学习资源介绍

整理的Python语法速览与实战清单,零基础注意查收!相关推荐

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

    前言 基础语法 Python 是一门高阶.动态类型的多范式编程语言:定义 Python 文件的时候我们往往会先声明文件编码方式: (文末送读者福利) 人生苦短,请用 Python,大量功能强大的语法糖 ...

  2. Python 语法速览与实战清单

    来源:王下邀月熊_Chevalier 链接:.https://segmentfault.com/a/1190000012129654 基础语法 Python 是一门高阶.动态类型的多范式编程语言:定义 ...

  3. python语法基础知识案例_Python 语法速览与实战清单

    本文是对于 现代 Python 开发:语法基础与工程实践的总结,更多 Python 相关资料参考 Python 学习与实践资料索引:本文参考了 Python Crash Course - Cheat ...

  4. latex 甘特图_[简004] 史上'最全最精简'Markdown语法-速览速用

    < Markdown Syntax by Andy - Saturday, March 16, 2019> 目录: 一.Markdown 基础常用语法速览速用 1. 标题1-6(" ...

  5. Python和C语言哪个难?零基础学哪个好?

    Python和C语言哪个难?零基础学哪个好?Python上手简单有交互性强的开发环境,还有众多的第三方库,学习起来会比C/C++容易的多.C过于底层强在内存操作,功能实现起来却十分复杂并不适合新手作为 ...

  6. 自学python困难吗_Python学习难不难?零基础好学吗?

    Python学习难不难?零基础好学吗?我想对于很多人来说,这都是非常关键的问题,也是很多人都在疑惑的问题.现在市场发展,行业的竞争压力是非常大的,转型的人也是非常多,对于不少人转型人才来说,Pytho ...

  7. 30多岁转行做python_30 岁转行做Python开发晚吗?而且是零基础

    原标题:30 岁转行做Python开发晚吗?而且是零基础 最近有小伙伴问小编,30 岁转行做Python开发晚吗? 小编想说,其实无论男女,只要想学,有这个动力,就直接去行动.无论年龄,无论性别,只要 ...

  8. 《Android Studio开发实战 从零基础到App上线(第2版)》出版后记

    2015年11月23日,鄙人在csdn发表了第一篇技术文章,掐指一算距今已有三年.遥想当年开写博客,只是为了总结经验同时分享出来,后来机缘巧合受到出版社编辑邀请并出了书,完全是无心插柳的结果.当初写作 ...

  9. 《Android Studio开发实战 从零基础到App上线(第2版)》资源下载和内容勘误

    资源下载 下面是<Android Studio开发实战 从零基础到App上线(第2版)>一书用到的工具和代码资源: 1.本书使用的Android Studio版本为3.2,最新的安装包可前 ...

最新文章

  1. java知识点思维导图_思维导图结构化梳理java
  2. CTF杂项题型之画图-Miscellaneous-200
  3. 调查问卷 | 中国云原生用户调研,邀您参与!
  4. python同时输入多个变量_python同时给多个变量赋值|python3教程|python入门|python教程...
  5. twilio_15分钟内使用Twilio和Stormpath在Spring Boot中进行身份管理
  6. 【OpenCV 例程200篇】01. 图像的读取(cv2.imread)
  7. 苏宁回应“股权质押”:正常商业合作
  8. static变量和static函数的用法摘抄
  9. 运行github上的Vue项目
  10. redis源码dict.c simple reading
  11. HTML5格式问题,你遇到了吗?
  12. 【bzoj1614】[Usaco2007 Jan]Telephone Lines架设电话线 二分+SPFA
  13. VSCode中Clangd无法找到stdio.h
  14. 四轴锁付程序,三菱FX5U发脉冲控制主轴,与好伙伴伺服电批进行MODBUS485通讯,实时采集扭矩和圈数,浮高和滑牙检测
  15. python操作键盘
  16. Markdown常用样式
  17. Android能装到电脑上吗,怎么在电脑上装安卓系统
  18. 单链表创建以及头插、尾插(一)-(B站)史上最强最细腻的linux嵌入式C语言学习教程【李慧芹老师】
  19. Flutter 设置 App 的主色调与字体
  20. uni-app中uni-ui组件库的使用

热门文章

  1. rabbitmq服务器搭建-集群
  2. 您尝试购买的项目已停止供货
  3. Goodsync 10.11.7.7 — 文件同步工具
  4. 【新一配】选股+择时策略组合
  5. 使用PotPlayer出现屏幕倒转
  6. PTA题目:时间换算
  7. Trace: `isModuleDeclaration` has been deprecated, please migrate to `isImportOrExportDeclaration`.
  8. html鼠标经过盒子延时显示,jQuery 鼠标经过(hover)事件的延时处理示例
  9. android自动显示金额UI,Android UI中英文自动显示问题
  10. php解析和风天气api,API爬取天气预报数据