导图社区 Python基础
这是一篇关于Python基础的思维导图,Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。
编辑于2024-04-21 20:49:13Python基础
Python简介
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言
Python语法基础
Python变量
1. Python变量是用来存储数据的容器,可以存储不同类型的数据,如整数、浮点数、字符串等。
2. Python变量名由字母、数字和下划线组成,且不能以数字开头。
3. Python中的变量不需要声明,直接赋值即可创建变量。
4. 变量名区分大小写,例如:var与Var会被视为两个不同的变量。
5. 可以通过赋值语句修改变量的值,也可以通过del关键字删除变量。
Python数据类型
1. Python中的数据类型包括:整数(int)、浮点数(float)、字符串(str)、列表(list)、元组(tuple)和字典(dict)。
2. 列表是可变的有序集合,可以存储不同类型的数据。
3. 元组是不可变的有序集合,与列表类似,但元组使用圆括号而不是方括号表示。
4. 字典是一种无序的数据结构,由键值对组成,每个键对应一个值。
5. Python还提供了其他数据类型,如集合(set)和布尔值(bool),用于处理特定的数据场景。
6. 在编写Python代码时,了解不同的数据类型及其特点可以帮助我们更有效地处理和操作数据。
Python运算符
算术运算符 +:加法 -:减法 *:乘法 /:除法 //:整除(地板除) %:取模(求余数) **:幂运算
比较运算符 ==:等于 !=:不等于 >:大于 <:小于 >=:大于或等于 <=:小于或等于
赋值运算符 =:赋值 +=:加法赋值 -=:减法赋值 *=:乘法赋值 /=:除法赋值 //=:整除赋值 %=:取模赋值 **=:幂运算赋值
运算符优先级 Python 中的运算符优先级从高到低为: 括号 指数运算 (**) 正负号 (+x, -x, ~x) 乘法、除法、取模和整除 (*, /, //, %) 加法和减法 (+, -) 位运算 (<<, >>, &, ^, |) 比较运算符 (<, <=, >, >=, !=, ==) 身份运算符 (is, is not) 成员运算符 (in, not in) 逻辑运算符 (not, and, or)
位运算符 &:按位与 |:按位或 ^:按位异或 ~:按位取反 <<:左移 >>:右移
逻辑运算符 and:逻辑与 or:逻辑或 not:逻辑非
Python面向对象
1. Python中的对象是类的实例,类定义了对象的结构和行为。
2. 使用`class`关键字定义类,通过调用类名来创建对象。
3. 对象属性:类中的变量,用于存储对象的状态。
4. 对象方法:类中的函数,用于描述对象的行为。
5. 构造方法:`__init__`方法,用于初始化对象属性。
6. 继承:子类可以继承父类的属性和方法,实现代码复用。
7. 多态:不同类的对象可以使用相同的方法名,但具体实现可能不同。
8. 封装:将对象内部实现细节隐藏起来,只暴露必要的接口给外部访问。
加密
对称加密: AES(密钥,随机数)
非对称加密: 算法非对称 密钥非对称(RSA
数组查找
查找
二分查找 二分查找可以用二叉树来代替
线性查找
排序
冒泡(O(N^2))
归并(O(N*log(N)))
Python网络爬虫
第一:不能爬未授权的网站,遵守robots.txt
不需要登录 直接通过用户名密码登录 需要验证码登录
爬虫步骤:发起请求、获取响应内容、解析内容、保存数据
发起请求:请求的发起是使用 http 库向目标站点发起请求,即发送一个Request 获取响应内容:爬虫程序在发送请求后,如果服务器能正常响应,则会得到一个Response 解析内容:解析 html 数据:解析 html 数据方法有使用正则表达式、第三方解析库如 Beautifulsoup 保存数据:爬取的数据以文件的形式保存在本地或者直接将抓取的内容保存在数据库中,数据库可以是 MySQL、Mongdb、Redis、Oracle 等……
Python数据结构
Python列表
列表是Python中最常用的数据结构之一,它是一个有序的元素集合,通常·放在[] 有序性:列表中的元素按照它们在列表中的位置进行排序,第一个索引为0,第二个为1,以此类推 可变性:列表中的元素可以根据需要随时进行添加、删除和修改
Python元组
元组与列表类似,也是一个有序的元素集合,可以存储不同类型的元素 但元组一旦创建就不能修改,不能向元组中添加、删除或修改元素 元组用圆括号()表示,元素之间也用逗号分隔。 不可变性:元组创建后不能修改。 有序性:元组中的元素也有位置关系,可以通过索引和切片操作来访问元组中的元素
Python字典
字典是Python中唯一的映射类型,它存储的是键值对(key-value)的形式 字典中的键必须是唯一的,而值可以是任意类型的数据 字典用大括号{}表示,每个键值对之间用逗号分隔 无序性:字典中的数据是无序排列的,与列表和元组的顺序排列不同。 可变性:字典是可变的,可以添加、删除或修改键值对。 字典在Python中非常强大,常用于存储需要快速查找的数据。你可以通过键来快速访问、修改或删除对应的值。
Python集合
集合是一个无序且不重复的元素集合 无序性:集合中的元素没有特定的顺序。 不重复性:集合中的元素都是唯一的,不允许有重复元素
Python字符串
连接:使用 + 运算符连接两个字符串。 复制:使用 * 运算符复制字符串。 切片:使用 [start:stop:step] 的方式获取字符串的子串。 长度:使用 len() 函数获取字符串的长度。 查找:使用 find(), index(), startswith(), endswith() 等方法查找子串或字符。 替换:使用 replace() 方法替换子串。 分割:使用 split() 方法将字符串分割成列表。 大小写转换:使用 upper(), lower(), capitalize(), title() 等方法转换字符串的大小写。 去除空白:使用 strip(), lstrip(), rstrip() 方法去除字符串两端的空白字符。 判断:使用 isalpha(), isdigit(), isalnum(), isspace() 等方法判断字符串的类型。
Python序列
序列是Python中另一类重要的数据结构,它包含一组有序的元素 索引:通过索引(位置)访问序列中的元素。 切片:使用切片操作访问序列的子序列。 加:使用 + 运算符连接两个序列。 乘:使用 * 运算符重复序列。 长度:使用 len() 函数获取序列的长度。 最大/最小值:使用 max() 和 min() 函数获取序列中的最大和最小值(适用于数值序列)
Python数据库操作
Python数据库增加: insert sql = "INSERT INTO your_table (name, age, city) VALUES (%s, %s, %s)"
连接数据库:在进行任何操作之前,你需要连接到数据库。这通常涉及提供主机名、端口、用户、密码和数据库名 import pymysql #调用python数据库 conn = pymysql.connect(host='localhost', user='your_username', password='your_password', database='your_database') # 创建连接 cursor = conn.cursor() # 创建一个游标对象
Python数据库查询:select sql = "SELECT * FROM your_table"
Python数据库删除: delete sql = "DELETE FROM your_table WHERE name=%s"
Python数据库更新: update sql = "UPDATE your_table SET age=%s, city=%s WHERE name=%s"
关闭数据库: cursor.close() # 关闭游标 conn.close() # 关闭连接