Python笔记-总

更新日期:2023/8/29

 

Ⅰ基础

第零章 起源&部署

获取python环境:https://www.python.org/downloads/

获取Pycharm:https://www.jetbrains.com/pycharm/download/download-thanks.html?platform=windows

破解包:baidu盘

ps:编辑工具不一定使用Pychar

第一章 变量及数据类型

第一小节 变量

变量的概念

变量相当于一个容器,一个袋子,将你的数据放入其中

格式

变量名 = 值

命名规范

1.字母,数字,下划线

2.数字不能开头

3.不能使用关键字

4.区分大小写

5.见名知意

6.小驼峰式命名,或利用下划线 例子:nameByQQ

中文可以,但不推荐

第二小节 数据类型

python不会太要求数据类型

int整型

整数,用于数字计算,精准

float浮点型

带小数点,不精准

string字符串

' ', " " ,''' '''均可以,优先级依次正大

boolean布尔型

用于判断

true,false

类型转换

类型[变量]

str--> int 带小数点会报错

float--> int 小数点会被抹去

第二章 函数

格式:

def get_sum():

return 返回值

当调用函数的时候才会被执行

内置函数:

print打印输出

input输入

自定义函数def

格式

def 函数名 (参数列表):
    函数体

 

第三章 类

造一个小人

格式:

class [类名]:

def_init_(self,name,height,weight)

第四章 注释

单行注释:#开头

多行注释,三个引号(“)

“”“

内容

”“”

第五章 运算

python满足数学的运算顺序

条件判断

条件判断语句

if 条件一:

执行语句

elif 条件二:

执行语句

else:

执行语句

解释:if判断是否满足条件,满足执行后面的,不满足执行elif后面的,如果都不满足,则执行else后面的

条件判断是可以嵌套应用的

逻辑运算

and与,全true输出true,有一个false,输出false

or或,有一个true输出true,全false输出false

not非,true输出false,false输出true

第六章 列表与字典

第一小节 列表

方括号([])表示列表,多个数据用逗号(,)隔开

特性

第二小节 字典

用花括号({})表示,里面的键与值之间用冒号(:)分隔开,不同的两组用逗号分隔开(,)

特性:

第七章 循环

第一小节 for循环

结构

for 变量名 in 可迭代对象:

执行的代码

第二小节 while

结构

while 条件:

执行代码

Ⅱ高级

第一章 多文件多功能【模块化】

== help by ChatGPT ==

首先你需要一个main.py文件来启动他们

其他的多个文件每个文件可以代表一个功能,总之写啥随意

最后使用import来引用他们

下面是一个简单的示例:

假设您有两个文件: gui_logic.pydatabase.py

gui_logic.py 中,您可以编写如下代码:

python# gui_logic.py

def show_message():
    print("Hello, GUI!")

database.py 中,您可以编写如下代码:

python# database.py

def save_data(data):
    # 实现保存数据到数据库的逻辑
    print("Data saved:", data)

然后,在 main.py 中,您可以导入这些功能并使用它们:

python# main.py
from gui_logic import show_message
from database import save_data

show_message()
save_data("Some data")

这样,您就可以将不同的功能模块拆分到不同的文件中,并在主文件中导入和使用它们。

ps:如果你在其他的py中引用了库,那么你无需在main中引用

 

Ⅲ应用--爬虫

第零章 爬虫基础信息

什么是爬虫

爬虫是一种模拟浏览器上网,然后去互联网上抓取数据的过程

爬虫的合法性

1.在法律中是不被禁止的

2.具有违法风险

3.爬虫如果干扰了网站的运营,抓取受到法律保护的特定类型的数据

爬虫分类

1.通用爬虫

抓取系统的重要的部分,抓取的是一整张页面数据

2.聚焦爬虫

抓取页面中局部的内容

3.增量式爬虫

检测网站中数据更新的情况,只抓取网站中最新的数据

爬虫的矛与盾

1.反爬机制

门户网站可以制定相关的策略或者技术防止爬虫进行网站数据的爬取

robots.txt协议:规定了网站中那些数据可以被爬虫爬取那些不可以爬取

2.反反爬策略

破解目标网站的反爬机制,从而获得门户网站的数据

网站数据交换的协议

1.HTTP协议

概念:就是服务器和客户端进行数据交换的形式。

2.常用请求头信息

User-Agent:连接者的身份标识

Connection:请求完毕后,是断开还是保持连接 3.常用的响应头信息

Content-Type:服务器响应回客户端的数据

4.HTTPS协议

安全(带加密的)的超文本传输协议

加密方式

对称密钥加密:

graph LR
客户端 --> 密钥+加密信息-->服务器

存在问题:中间人可以窃取密钥从而获得信息

非对称密钥加密:

graph LR
客户端-->创建密钥-->发送公钥给服务器-->使用密钥进行加密-->加密后发给客户端 

存在问题:1.效率低下

2.无法保证密钥不会被劫持

证书密钥加密:

graph LR
公开密钥-->证书认证机构-->签名-->客户端

第一章

requests模块

1.概念

python中原生的一款基于网络请求的模块,功能强大,简便,高效。

模拟浏览器发请求

2.使用流程

graph LR
指定URL-->发起请求-->获取响应数据-->持久化存储

3.环境安装

pip install requests

在pycharm中:

graph LR
设置-->项目-->python解释器-->+-->搜索requests-->安装软件包


Ⅳ 应用--GUI编程

前言:

GUI是图形用户界面,是用户利用图形进行对程序进行交互

Tkinter【基础】

标准GUI库

wxPython

流行的GUI库

PyQT

Qt是开源库,但是有收费

第零章 环境搭建

== 该章节为实践后写的,由ChatGPT4.0辅助 ==

我们上手直接使用wxPython

  1. 安装wxPython:您可以使用pip命令在命令行中安装wxPython。运行以下命令:
pip install -U wxPython
  1. 导入wxPython模块:在您的Python脚本中,导入wxPython模块。通常,您需要导入 wx 模块。例如:
import wx
  1. 创建应用程序对象:使用 wx.App 类创建一个应用程序对象。这是wxPython应用程序的入口点。例如:
app = wx.App()
  1. 创建窗口对象:使用 wx.Frame 类创建一个窗口对象。您可以设置窗口的标题、大小和其他属性。例如:
frame = wx.Frame(None, title="My App", size=(800, 600))
  1. 显示窗口:使用窗口对象的 Show 方法显示窗口。例如:
frame.Show()
  1. 启动应用程序的事件循环:使用 app.MainLoop 方法启动应用程序的事件循环,使应用程序保持运行状态。例如:
app.MainLoop()

第一章 按ESC使程序退出