Python
马大大大大阳
做自己,无需言。☀️
展开
-
python 多进程
import concurrent.futuresimport osPRIMES = [ 1116281, 1297337, 104395303, 472882027, 533000389, 817504243, 982451653, 112272535095293, 112582705942171, 112272535095293, 115280095190773, 115797848077099,原创 2022-02-06 22:29:41 · 606 阅读 · 0 评论 -
python xpath 和 css选择器爬虫
利用xpathfrom lxml import etreeimport requestsfor page in range(1, 11): resp = requests.get( url=f'https://movie.douban.com/top250?start={page - 1}', headers={'User-Agent': 'BaiduSpider'} ) tree = etree.HTML(resp.text) #原创 2022-02-06 20:15:20 · 531 阅读 · 0 评论 -
python 获取网络资源
import requestsimport reresp = requests.get('https://www.sohu.com/')pattern = re.compile(r'<a.*?href="(.*?)".*?title="(.*?)".*?>')if resp.status_code == 200: print(resp.text) all_matches = pattern.findall(resp.text) for href, title i原创 2022-02-04 22:18:55 · 526 阅读 · 0 评论 -
Python 正则表达式
import re#验证用户名 和 qq 号username = input('请输入用户名')qq = input('请输入qq号')m1 = re.match(r'^[0-9a-zA-Z]{6,20}$', username)m2 = re.fullmatch(r'[1-9]\d{4,11}', qq)pattern = re.compile(r'(?<=\D)1[34578]\d{9}(?=\D)')sentence = '''重要的事情说8130123456789遍,我的手机原创 2022-02-04 20:31:21 · 225 阅读 · 0 评论 -
py 发送邮件和短信
import smtplibfrom email.header import Headerfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom urllib.parse import quote#创建邮件主体对象email = MIMEMultipart()#设置发件人、收件人和主题email['From'] = '396434855@qq.com'email['To'原创 2022-02-04 18:32:20 · 404 阅读 · 0 评论 -
Python 操作word文档
from docx import Documentfrom docx.shared import Cm, Ptfrom docx.document import Document as Doc#创建代表Word文档的Doc对象document = Document() #type:Doc#添加大标题document.add_heading('快快乐乐学Python', 0)#添加段落p = document.add_paragraph('Python是一门非常流行的编程语言,它')ru原创 2022-02-04 13:11:43 · 1139 阅读 · 0 评论 -
Python Excel的使用2
import datetimeimport randomimport openpyxl#加载一个工作簿 --> Workbookwb = openpyxl.load_workbook('阿里巴巴2020年股票数据.xlsx')#获取工作表的名字print(wb.sheetnames)#获取工作表 --> WorkSheetsheet = wb.worksheets[0]#获取单元格的范围print(sheet.dimensions)#获得行数和列数print(shee原创 2022-02-04 11:47:28 · 239 阅读 · 0 评论 -
python excel读写-1
import randomimport xlrdimport xlwtwb = xlrd.open_workbook('阿里巴巴2020年股票数据.xls')sheetnames = wb.sheet_names()print(sheetnames)sheet = wb.sheet_by_name(sheetnames[0])print(sheet.nrows, sheet.ncols)for row in range(sheet.nrows): for col in range原创 2022-02-04 10:42:35 · 232 阅读 · 0 评论 -
PY 读写csv文件
import csvimport randomwith open ('scores.csv', 'w') as file: writer = csv.writer(file, delimiter = '|') writer.writerow(['姓名', '语文', '数学', '英语']) names = ['关羽', '张飞', '赵云', '马超', '黄忠'] for name in names: scores = [random.randran原创 2022-02-03 20:21:28 · 264 阅读 · 0 评论 -
Python 对象的序列化和反序列化
import jsonimport requestsmy_dict = { 'name': 'mxy', 'age': 22, 'friends': ['wdc', 'byf'], 'cars':[ {'brand': 'BMW', 'max_speed': 240}, {'brand': 'Audi', 'max_speed': 280}, {'brand': 'Benz', 'max_speed': 280} ]原创 2022-02-02 14:31:14 · 432 阅读 · 0 评论 -
python文件读写
file = open('致橡树.txt', 'r', encoding='utf-8')print(file.read())file.close()file = open('致橡树.txt', 'r', encoding='utf-8')for line in file: print(line, end='')file.close()file = open('致橡树.txt', 'r', encoding='utf-8')lines = file.readlines()for原创 2022-02-02 10:27:48 · 332 阅读 · 0 评论 -
PY 面向对象进阶
class Student: def __init__(self, name, age): self.__name = name self.__age = age def study(self, coure_name): print(f'{self.__name}正在学习{coure_name}')stu = Student('马晓阳', 22)stu.study('Python程序设计')print(stu._Student__na原创 2022-02-02 01:08:18 · 78 阅读 · 0 评论 -
PY 面向对象入门
#定义类import timeclass Student: def study(self, course_name): print(f'学生正在学习{course_name}') def play(self): print(f'学生正在玩游戏')#创建和使用对象stu1 = Student()stu2 = Student()print(stu1)print(stu2)print(hex(id(stu1)), hex(id(stu2))原创 2022-02-02 00:33:53 · 103 阅读 · 0 评论 -
PY装饰器
import randomimport timedef download(filename): print(f'开始下载{filename}') time.sleep(random.randint(2, 6)) print(f'{filename}下载完成')def upload(filename): print(f'开始上传{filename}') time.sleep(random.randint(4, 8)) print(f'{filenam原创 2022-02-01 22:31:23 · 111 阅读 · 0 评论 -
python 函数进阶
#设计一个生成验证码的函数import randomimport stringALL_CHARS = string.digits + string.ascii_lettersprint(ALL_CHARS)def generate_code(code_len = 4): return ''.join(random.choices(ALL_CHARS, k = code_len))def get_suffix(filename): pos = filename.rfind('原创 2022-02-01 18:13:05 · 107 阅读 · 0 评论 -
py 函数和模块
import md1 as m1import md2#三个数相加求和def add(a = 0, b = 0, c = 0): return a + b + cprint(add())print(add(1))print(add(1, 2, 3))print(add(c = 50, b = 1, a = 2))#可变参数def fun(*args): for val in args: print(val)fun(1)fun(1, 2, 3, 9.原创 2022-02-01 01:18:05 · 1716 阅读 · 0 评论 -
py 字典
xinhua = { '麓': '山脚下', '路': '道,往来通行的地方;方面,地区:南~货,外~货;种类:他俩是一~人', '蕗': '甘草的别名', '潞': '潞水,水名,即今山西省的浊漳河;潞江,水名,即云南省的怒江'}print(xinhua)person = { 'name': '马晓阳', 'age': 55, 'weight': 60}print(person)#dict构造器person = dict(name='马晓阳', age原创 2022-02-01 01:01:57 · 400 阅读 · 0 评论 -
python 集合
#创建集合set1 = {1, 2, 3, 3, 3,2}print(set1) #{1, 2, 3}print(len(set1)) #3#创建集合的构造器语法set2 = set('hello')print(set2)#将列表转换为集合set3 = set([1, 2, 3, 3, 2, 1])print(set3)#创建集合的生成式语法(将列表生成式的[]换成{})set4 = {num for num in range(1, 20) if num % 3 == 0 or原创 2022-01-29 03:12:39 · 137 阅读 · 0 评论 -
python 元组
#元组 元素不能再添加或删除 也不能修改其值 支持的运算符和列表一样# 定义一个三元组t1 = (30, 10, 55)#定义一个四元组t2 = ('晓阳', 40, True, '河北石家庄')# 查看变量的类型print(type(t1), type(t2)) #<class 'tuple'> <class 'tuple'># 查看元组中元素的数量print(len(t1), len(t2)) #3 4#通过索引运算获取元组中的元素print(t1[0原创 2022-01-29 00:44:12 · 641 阅读 · 0 评论 -
Python 列表
import randomitems1 = [35, 12, 99, 68]items2 = [45, 8, 29]#列表的拼接items3 = items2 + items1 #[45, 8, 29, 35, 12, 99, 68]print(items3)#列表的重复items4 = ['hello'] * 3print(items4) #['hello', 'hello', 'hello']#列表的成员运算print(100 in items3) #Falseprint(原创 2022-01-28 03:25:15 · 306 阅读 · 0 评论