pursue wind pursue wind
首页
Java
Python
数据库
框架
Linux
中间件
前端
计算机基础
DevOps
项目
面试
书
关于
归档
MacOS🤣 (opens new window)
GitHub (opens new window)
首页
Java
Python
数据库
框架
Linux
中间件
前端
计算机基础
DevOps
项目
面试
书
关于
归档
MacOS🤣 (opens new window)
GitHub (opens new window)
  • 基于Python轻松自建App服务器

    • 0App 与后端服务器通信方法简介
    • 1本小册要完成的通信场景功能
    • 2服务器端组件框架的选择与介绍
    • 3基于腾讯云的服务器端环境搭建
    • 4基于 Tornado 的 HTTP 服务器简介及代码组织框架
    • 5第一次数据请求 1:服务器接收用户注册信息
    • 6第一次数据请求 2:为用户处理模块增加 log 管理
    • 7第一次数据请求 3:将用户信息写入 MySQL 数据库
    • 8服务器接收客户端图片上传,并保存在硬盘中
    • 9服务器接收客户端请求,并返回 H5 页面
    • 10搭建基于 Nginx 的代理服务器
    • 11基于 HTTPS 的数据加密
    • 12大型 HTTP 服务器架构演进路线及思路
    • 13总结
  • 基于Python实现微信公众号爬虫

  • Xpath
  • python3 翻译
  • python3循环创建数据库表
  • python实用30个小技巧
  • pywin32
  • Python
pursuewind
2020-11-22
目录

python

# Python 从入门到放弃

# Python特点

  1. Python是一门编程语言,它只是众多编程语言中的一种
  2. 语法简洁、优雅、编写的程序容易阅读
  3. 跨平台,可以运行在Windows、Linux以及MacOS
  4. 易于学习。站在非计算机专业的角度来讲,如果把编程语言当做解决问题的工具, Python确实相较于C++、Java、JavaScript等语言要易于学习和掌握
  5. 极为强大而丰富的标准库与第3三方库,比如电子邮件,比如图形GUl界面
  6. Python是面向对象的语言

Simple is better than complex. 简洁胜于复杂

Now is better than never. Although never is often better than right now 做也许好过不做,但不假思索就动手还不如不做

# Python能做什么

  1. 爬虫
  2. 大数据与数据分析( Spark )
  3. 自动化运维与自动化测试
  4. Web开发: Flask、Django
  5. 机器学习: Tensor Flow
  6. 胶水语言:混合其他如C++、Java等来编程。能够把用其他语言制作的各种模块(尤其是C/C++ )很轻松地联结在一起

# 入门

python 如何将a、b两个变量的值交换 a,b=b,a

# Python的基本数据类型

  1. 整数: int
  2. 浮点数: float
  3. 其他语言:单精度( float) , 双精度( double )
  4. 其他语言: short, int, long

# Number

15043744749

15043907558

15044029557

# Python 表示二进制 0b 开头,八进制 0o开头,十六进制0x开头

15044447334

15045047958

# bool

15045246628

15045413384

15045705878

# complex

15045816678

# str

如何表示字符串? 单引号,双引号,三引号

15050003134

15050155431

15050304019

15050447345

15050601267

# 转义字符

特殊的字符 无法“看见”的字符 与语言本身语法有冲突的字符

15050807125

# 字符串运算

15051141931

15051525630

15052003488

15051853958

# list

15052206137

15052255095

15052958359

# tuple

15053244952

15053409662

15053601546

str,list,tuple 在 Python 中都属于序列

15054103922

15054154364

# set

15054541540

15054722441

15054837494

# dict

dict 的 key 必须是不可变类型

15055038241

15055423119

15055522661

# 变量与运算符

# 变量

系统关键字不能用在变量名中,变量名字应该清晰规范

15055951383

int str tuple (不可改变) 值类型,list set dict (可变) 引用类型

15060356912

15060759583

15060953916

15061149933

# 运算符

# 算术运算符

运算符 描述 实例(以下假设变量: a=10,b=20)
+ 加 - 两个对象相加 a + b 输出结果 30
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 - x除以y b / a 输出结果 2
% 取模 - 返回除法的余数 b % a 输出结果 0
** 幂 - 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000
// 取整除 - 返回商的整数部分(向下取整) >>> 9//2 4 >>> -9//2 -5

# 赋值运算符

运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c *= a 等效于 c = c * a
//= 取整除赋值运算符 c //= a 等效于 c = c // a

15061514871

# 比较运算符

运算符 描述 实例
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 true.
<> 不等于 - 比较两个对象是否不相等。python3 已废弃。 (a <> b) 返回 true。这个运算符类似 !=
> 大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。 (a < b) 返回 true。
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 true。

15062807850

15062827232

# 逻辑运算符

运算符 逻辑表达式 描述 实例(变量 a 为 10, b为 20)
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False

15062910639

int float 0 被认为是False,非 0 被认为是True

空串 被认为是 False

空的 (list,tuple,set,dict) 都被认为是 False

16001545378

16001405275

# 成员运算符

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

# 身份运算符

运算符 描述(身份运算符用于比较两个对象的存储单元) 实例( id() 函数用于获取对象内存地址 )
is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。

16001820208

16001955984

16002335775

16002610882

对象的三个特征 id、value、type 对应的判断方式 is、== 、isinstance

# 位运算符

按位运算符是把数字看作二进制来进行计算的。

下表中变量 a 为 60,b 为 13,二进制格式如下:

  a = 0011 1100
  b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
 ~a = 1100 0011
1
2
3
4
5
6
7
运算符 描述 实例
& 按位与:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 12 ,二进制解释: 0000 1100
| 按位或:只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 61 ,二进制解释: 0011 1101
^ 按位异或:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ 按位取反:对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: 1100 0011,在一个有符号二进制数的补码形式。
<< 左移动:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111

# 表达式

表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列

# 表达式优先级

运算符说明 Python运算符 优先级 结合性 优先级顺序
小括号 ( ) 19 无 最高
索引运算符 x[i] 或 x[i1: i2 [:i3]] 18 左
属性访问 x.attribute 17 左
乘方 ** 16 左
按位取反 ~ 15 右
符号运算符 +(正号)、-(负号) 14 右
乘除 *、/、//、% 13 左
加减 +、- 12 左
位移 >>、<< 11 左
按位与 & 10 右
按位异或 ^ 9 左
按位或 | 8 左
比较运算符 ==、!=、>、>=、<、<= 7 左
is 运算符 is、is not 6 左
in 运算符 in、not in 5 左
逻辑非 not 4 右
逻辑与 and 3 左
逻辑或 or 2 左
逗号运算符 exp1, exp2 1 左 最低

23173009654

# 循环

23173301412

23173605393

23173903036

# 包 模块 类

23181537159

23181632283

# 函数

  1. 功能性
  2. 隐藏细节
  3. 避免编写重复的代码

30093843828

30094310373

30094456798

30094840203

30095035986

30095010520

# 序列解包

30095321266

30095440758

30095524888

# 参数

  • 必须参数
  • 关键字参数
  • 默认参数

30095808921

30100045708

30100101378

30100304817

# 面向对象

# 构造函数

python 会在初始化对象的时候自动调用构造函数

30102559325

30102657721

30100905522

30112018943

30112846142

# 类方法

30113137857

# 静态方法

30114012620

# 私有方法

双下划线开头 但是不要以双下划线结尾!!!

30114900520

30115804020

30120028001

# 继承

30122219006

Last Updated: 2023/02/14, 18:02:00
Theme by Vdoing | Copyright © 2019-2023 pursue-wind | 粤ICP备2022093130号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
  • 飙升榜
  • 新歌榜
  • 云音乐民谣榜
  • 美国Billboard榜
  • UK排行榜周榜
  • 网络DJ