随笔分类 - Python
摘要:1. BeautifulSoup 1.1 解析库 1)Python标准库 # 使用方法 BeautifulSoup(markup, "html.parser") # 优势 Python的内置标准库,执行速度适中,文档容错能力强 # 劣势 Python2.7.3 或者 python3.2.2 前的版本
阅读全文
摘要:1. 基本规则 # 元字符: # . ^ $ * + ? { } [ ] | ( ) \ # 字符类型匹配: # . 表示匹配任意一个字符(换行符除外) # [asdf] 表示匹配中括号里面的任意一个字母一次 # [a-z] 表示匹配a-z中的任意一个字母 [0-9] 表示匹配0-9中的任意一个数字
阅读全文
摘要:1. 迭代器 1.1 可迭代对象(Iterator) 迭代器协议:某对象必须提供一个__next__()方法,执行方法要么返回迭代中的下一项,要么引起一个Stopiteration异常,以终止迭代(只能往后走,不能往前退) 协议是一种规范,可迭代对象实现了迭代器协议,python的内部工具(如for
阅读全文
摘要:1. 进程原理 1.1 程序和进程 程序:只是一堆代码 进程:正在运行中的任务,负责执行任务的是CPU 程序只是一堆代码,而进程是程序运行的实例 同一个程序执行两次,那也是两个进程 1.2 并发与并行 无论是并行还是并发,在用户的角度看来都是“同时”运行的 多道技术:内存中同时存入多道(多个)程序,
阅读全文
摘要:1. 可用的国内源 中国科学技术大学 : https://pypi.mirrors.ustc.edu.cn/simple 清华:https://pypi.tuna.tsinghua.edu.cn/simple 豆瓣:http://pypi.douban.com/simple/ 华中理工大学 : ht
阅读全文
摘要:1. socket套接字 1.1 socket简介 1)网络中的进程间通信 在本地可以通过进程PID来唯一标识一个进程,但是在网络中这却是行不通的。 TCP/IP协议族已经解决了这个问题,网络层的“IP地址”可以唯一标识网络中的主机,而传输层“协议+端口”可以唯一标识主机中的应用程序(进程)。 这样
阅读全文
摘要:1. Python基础 Python基础入门 Python的基本数据类型 Python文件操作 Python函数与异常 Python迭代器&生成器&装饰器 Python常用的模块和包 Python面向对象 OSI七层模型详解 Python网络编程 2. Python并发编程 多进程 多线程 协程 I
阅读全文
摘要:1. Request库的基本方法 response.status_code 响应状态码 rersponse.text 转换成str格式 response.cookies 拿到cookies response.headers 拿到header response.content 获取二进制内容 resp
阅读全文
摘要:1. 代码的编码&注释 1.1 编码 1)编码概述 计算机中所有的数据本质上都是以0和1的组合来存储的,编码类似于一个密码本,为文字和0/1的组合提供对应关系。 在文件保存时会根据编码的对应关系找到其对应的0/1写入到硬盘文件中,一般在文件保存时会让用户选择以某种编码保存。 计算机中有很多种编码方式
阅读全文
摘要:1. 导入包和模块 1.1 import导入模块 1)导入模块 模块可以包含可执行的语句和函数的定义,这些语句的作用是初始化模块,它们只在模块第一次遇到导入语句import时才执行。 import语句可以在程序中的任意位置使用,且在第一次导入之后就将模块名加载到内存中了,后续对于同样模块的impor
阅读全文
摘要:1. 普通模式 1.1 文件操作说明 1)open()函数指定编码 open()函数访问文件时要先向操作系统发送请求,所以打开文件的编码以操作系统默认编码为准,windows默认编码为GBK。 若open()函数不指定编码,可能会造成乱码。 open()函数不会将整个文件瞬间全部加载到内存。 2)p
阅读全文
摘要:1. 安装Anaconda 1.1 安装Anaconda 因为Anaconda中包含了jupyter,所以可以直接安装Anaconda 如果不想安装Anaconda,可以直接手动安装jupyter wget -c https://repo.anaconda.com/archive/Anaconda3
阅读全文
摘要:1. 整型(int) 1.1 其它类型转换为整型 可以通过 type() 来查看变量到底是什么类型 # 布尔值转整型 n1 = int(True) # True转换为整数 1 n2 = int(False) # False转换为整数 0 # 字符串转整型 v1 = int("186", base=1
阅读全文
摘要:1. 函数基础 1.1 函数的参数 1)参数说明 形参就是一个变量名,实参就是值,传参就是在赋值。 形参:写在函数声明的位置的变量叫形参 实参:在函数调用的时候给函数传递的值(实际执行的时候给函数传递的信息) 传参:给函数传递信息的时候将实际参数交给形式参数的过程被称为传参 2)参数的分类 位置参数
阅读全文
摘要:1.调用threading模块来创建线程 1 from threading import Thread 2 import threading 3 import os 4 import time 5 6 def func(num): 7 for i in range(5): 8 time.sleep(
阅读全文
摘要:1.用fork创建进程(Linux中使用) 程序走到os.fork()时,会创建出一个子进程,并将父进程中的所有信息复制到子进程中,父进程和子进程都会从os.fork()中得到一个返回值,子进程中这个返回值是0,而父进程中这个返回值就是子进程的id号 注意:fork被调用时会返回两个值,一个是代表子
阅读全文
摘要:1. 一个简单的UDP服务端与客户端 1.1 服务端 1 from socket import * 2 #创建套接字 3 udp_server = socket(AF_INET,SOCK_DGRAM) 4 5 msg_server = ("",8877) 6 #绑定ip地址和端口 7 udp_ser
阅读全文
摘要:1. 多线程tcp server & client 1.1 tcp服务端(多线程) 1 from socket import * 2 from threading import Thread 3 4 def client(socket_client, msg_addr): 5 print(">>>有
阅读全文