廖雪峰Python学习笔记day13

07后台管理员登录与退出 阅读详情

学习笔记day12

# python study day13

# PIL 提供了操作图像的强大功能,Pillow是PIL的增强版
# 操作图像缩放
# from PIL import Image
# im = Image.open('C:\\Users\\LG\\Desktop\\11.png')
# w, h = im.size
# print('%s %s' % (w, h))
# im.thumbnail((w//2, h//2)) # 缩放50%
# im.save('C:\\Users\\LG\\Desktop\\22.png', 'png')
# 模糊效果
# from PIL import Image, ImageFilter
# im = Image.open('C:\\Users\\LG\\Desktop\\11.png')
# im2 = im.filter(ImageFilter.BLUR)
# im2.save('C:\\Users\\LG\\Desktop\\33.png', 'png')
# PIL的ImageDraw提供了绘图方法,如生成字母验证图片
# from PIL import Image, ImageDraw, ImageFont, ImageFilter
# import random
# def rndChar(): # 生成随机字母
#     return chr(random.randint(65, 90))
# def rndColor(): # 随机颜色1
#     return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255))
# def rndColor2(): # 随机颜色2
#     return  (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127))
# width = 60* 4
# height = 60
# image = Image.new('RGB', (width, height), (255, 255, 255))
# font = ImageFont.truetype('C:\Windows\Fonts\Arial.ttf', 36)
# draw = ImageDraw.Draw(image)
# for x in range(width): # 填充像素
#     for y in range(height):
#         draw.point((x, y), fill = rndColor())
# for t in range(4): # 输出文字
#     draw.text((60 * t + 10, 10), rndChar(), font = font, fill = rndColor2())
# image = image.filter(ImageFilter.BLUR) # 模糊
# image.save('C:\\Users\\LG\\Desktop\\code.jpg', 'jpeg')

# requests 处理URL高级功能
# import requests
# r = requests.get('https://www.douban.com/')
# r.status_code #>>> 200
# r.text #>>> '<!DOCTYPE HTML>\n<html>\n<head>\n<meta name="description" content=…
# r.encoding #>>> 'utf-8'
# r.content #>>> b'<!DOCTYPE html>\n<html>\n<head>\n<meta http-equiv="Content-Type"…
# r.headers #>>> {Content-Type': 'text/html; charset=utf-8', 'Transfer-Encoding':…
# r.headers['Content-Type'] #>>> 'text/html; charset=utf-8'
# r.cookies['ts'] #>>> 'example_cookie_123'
# cs = {'token': '1234', 'status': 'working'}
# r = requests.get(url, cookies=cs) # 传入cookies参数
# r = requests.get(url, timeout=2.5) # 设置超时,ms
# r = requests.get('https://www.douban.com/search',params={'q':'python', 'cat':'Kidy'})
# r.url #>>> 'https://www.douban.com/search?q=python&cat=kidy
# r = requests.get('https://query.yahooapis.com/v1/public/yql?q=select%20'+
# '*%20from%20weather.forecast%20where%20woeid%20%3D%202151330&format=json')
# r.json() #>>> {'query': {'count': 1, 'created': '2017-11-17T07:14:12Z', ...
# r = requests.get(url, headers={'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS……)')
# r = requests.post(url, data={'username':'name', 'password':'123456'})
# params = {'key': 'value'}
# r = requests.post(url, json=params) # 内部自动序列化为json
# upload_file = {'file': open('report.xls', 'rb')}
# r = requests.post(url, files=upload_file)

# chardet 用于检测编码
# chardet.detect(b'hello, world!')
# #>>> {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} # confidence检测率
# data = '离离原上草,一岁一枯荣'.encode('gbk')
# chardet.detect(data)
# #{'encoding': 'GB2312', 'confidence': 0.7407407407407407, 'language': 'Chinese'}
# data = '离离原上草,一岁一枯荣'.encode('utf-8')
# chardet.detect(data)
# #{'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}
# data = '最新の主要ニュース'.encode('euc-jp')
# chardet.detect(data)
# {'encoding': 'EUC-JP', 'confidence': 0.99, 'language': 'Japanese'}

# psutil (process and system utilities) 处理系统、运行等信息
# import psutil
# psuitl.cpu_count() # CPU逻辑数
# psutil.cpu_count(logical=False) # CPU物理核心
# psutil.cpu_times() # 统计CPU用户/系统/空闲时间
# #>>> scputimes(user=10963.31, nice=0.0, system=5138.67, idle=356102.45)
# psutil.cpu_percent(interval=1, percpu=True) # 间隔1秒刷新cpu使用率
# psutil.virtual_memory() # 获取物理内存
# psutil.swap_memory() # 获取交换内存信息
# psutil.disk_partitions() # 磁盘分区信息
# psutil.disk_usage() # 磁盘使用情况
# psutil.disk_io_counters() # 磁盘IO
# psutil.net_io_counters() # 获取网络读写字节/包的个数
# psutil.net_if_addrs() # 获取网络接口信息
# psutil.net_if_stats() # 获取网络接口状态
# psutil.net_connections() # 获取当前网络连接信息
# psutil.pids() # 所有进程ID
# p = psutil.Process(3776) # 获取指定进程ID=3776
# p.name() # 进程名称
# p.exe() # 进程exe路径
# p.cwd() # 进程工作目录
# p.cmdline() # 进程启动的命令行
# p.ppid() # 父进程ID
# p.parent() # 父进程
# p.children() # 子进程列表
# p.status() # 进程状态
# p.username() # 进程用户名
# p.create_time() # 进程创建时间
# p.terminal() # 进程终端
# p.cpu_times() # 进程使用的CPU时间
# p.memory_info() # 进程使用的内存
# p.open_files() # 进程打开的文件
# p.connections() # 进程相关网络连接
# p.num_threads() # 进程的线程数量
# p.threads() # 所有线程信息
# p.environ() # 进程环境变量
# p.terminate() # 结束进程
# psutil.test() # 模拟ps命令效果

# virtualenv 创建新的python运行环境,区分应用、系统的python环境
# step 1: 创建项目目录
# $ mkdir myproject
# $ cd myproject/
# step 2: 创建python环境目录
# $ virtualenv --no-site-packages virtualenv # 不含第三方包环境
# $ source venv/bin/activate # 进入该环境操作pip install ……
# $ deactivate 退出

在这里插入图片描述
学习笔记day14

Django验证码(二) 通过pillow模板库生成图片,步骤如下。增加验证码图片标签和输入验证码内容的标签。在图片标签上增加点击刷新的功能。修改 login 函数。 阅读详情

相关推荐

django项目登录中使用图片验证码的实现方法

主要介绍了django项目登录中使用图片验证码的实现代码,代码简单易懂,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下

Django之图形验证码

要将数据临时存储在内存需要借助Python的IO模块。// 如果原始 src 没有时间戳,直接添加时间戳。当这种验证图片数据在开发者模式中将它的末尾添加。// 如果已经包含时间戳,只替换最后一个时间戳。// 检查原始 src 是否已经包含时间戳。并加入任意数字后按下回车他就会自动变换。后端将生成图片验证码拆分到新的文件。最基础的生成图片就是获取静态文件。// 获取原始的 src 属性值。先生成一个随机的五位数文本。首先需要知道刷新图片的原理。安装Pillow模块。

AZURE060606的博客 1389

重磅!AI实时读取总结微信聊天记录,附MCP协议+智能体配置教程!

【摘要】本文介绍了一套AI实时分析微信聊天记录的解决方案,通过Chatlog+Trae+MCP协议实现智能整理群聊信息。Chatlog作为开源工具本地解析微信数据,确保隐私安全;Trae提供AI分析能力,支持自然语言处理。操作步骤包括:1)下载运行Chatlog并启动HTTP服务;2)安装Trae配置MCP协议;3)创建智能体设置提示词。该方案虽需初始配置,但能有效解决群聊信息过载问题,自动提炼关键内容,避免有价值信息被淹没。文中提供了详细教程链接和网盘资源。

puyihuan的博客 1万+

django验证码生成

1.验证码插件 验证码插件django-simple-captcha 安装后再settings配置 INSTALLED_APPS = [ # 添加验证码插件 'captcha' ] 执行数据库迁移,生成一个表用于存储生成过的验证码,用于验证 配置主路由 # 所有captcha开头的路由都验证,自带captcha.urls文件 path('captcha/', include('captcha.urls'...

m0_62520968的博客 1277

基于8086微机原理数字钟计时器系统设计

*单片机设计介绍,基于8086微机原理数字钟计时器系统设计。

2201_75940997的博客 1279

拆开华为BBU5900,看看5G基站的大脑里到底装了啥?

本文深度拆解华为BBU5900,揭示5G基站核心处理单元的硬件架构与设计哲学。通过详细解析模块化设计、智能电源系统和动态散热方案,展现其支撑千兆速率、毫秒级时延的技术奥秘,为5G网络部署提供实用参考。

weixin_31456563的博客 562

Django学习15 -- 验证码

Django学习15 -- 验证码

Rolei的博客 4391

Revit二次开发之获取钢筋(Rebar)的线(Line)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

qq_25986069的博客 1311

Python廖雪峰教程学习笔记:Day13

前言 养成一个好的习惯只需要坚持21天,Day13 IO进程 StringIO和BytesIO StringIO 数据的读写可以像上一节一样,对文件进行读写,同样我们也可以在内存中读写。StringIO可以在内存中读写str,和上一节的文件读写类似: from io import StringIO f = StringIO() f.write('hello') f.write(' ') f.w...

Comme_moik的博客 345

【AUTOSAR-COM】-5.2-“Deadline Monitoring超时监控”-2-基于IPdu实现

目录 1 在CFG中配置Deadline Monitoring超时监控 1.1 参数说明 1.2 生成代码差异 2 通过一段测试代码看Deadline Monitoring超时监控 3 使用CAN盒观察Deadline Monitoring实际测试效果 3.1 Case 1:ECU开始工作时,没有收到Frame 3.2 Case 2:ECU工作中,接收的Frame丢失、 4 小结 5 结尾 关键字: DM=Deadline Monitoring超时监控 ComFirstTime...

「汽车电子助手」的博客 1788

【机器学习-17】数据变换---小波变换特征提取及应用案列介绍

小波变换作为一种前沿的数据分析工具,近年来在信号分析领域崭露头角。小波分析的理论和方法凭借其独特优势,在信号处理、图像处理、语音处理、模式识别以及量子物理等多个领域得到了广泛的应用,堪称近年来在工具及方法上的重大突破。小波变换以其多分辨率的特性,在时域和频域均展现出对信号局部特征的强大表征能力。通过伸缩和平移等运算过程,小波变换能够对信号进行多尺度聚焦分析,为非平稳信号的时频分析提供了一种有效手段。它允许我们由粗及细地逐步观察信号,从而精准地提取出有用信息。

qq_38614074的博客 2万+

廖雪峰Python3教程---实战day1-day13总结

转自我的简书

南宫轩翰的博客 1404

【txt文本加密】使用 cryptography 库实现加密和解密

cryptography 库是一个强大的 Python 库,用于实现加密和解密功能。它提供了各种加密算法,包括对称加密、非对称加密、哈希函数等。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 2667

Python廖雪峰教程学习笔记:Day5

前言 养成一个好的习惯只需要坚持21天,Day5 高级特性 切片 迭代 列表生成器 生成器 切片 取一个list和tuple的部分元素可以用切片快速实现。 L为一个list,L[0:3]表示从索引0开始取到索引3为止,但不包括索引3,即索引0,1,2三个元素。 如果第一个索引是0,还可以省略为L[:3],运行结果和L[0:3]一样。 如果索引从1开始,取出两个元素则可以写作L[1:3],运行...

Comme_moik的博客 569

泰山派rk3566 audio音频基础介绍

本文介绍了嵌入式系统中音频处理的基础知识,重点围绕RK3566平台的音频子系统展开。文章首先解释了音频信号从模拟到数字的转换过程,包括采样率、位深和声道等核心概念。随后详细分析了嵌入式音频开发中的关键接口:I2C用于控制音频编解码器,I2S作为专用音频数据传输总线,以及PCM作为原始音频格式和ALSA设备抽象的双重含义。通过对这些基础概念和接口的解析,为在RK3566平台上进行音频驱动开发和应用调试提供了理论基础。

qq_37077309的博客 294

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

廖雪峰Python学习笔记day4

学习笔记day3 # python study day4 # 高阶函数 filter(),过滤序列、筛选函数 # filter(过滤函数, Iterable) , 返回Iterator 惰性序列 # l = list(filter(lambda n: n%2==1, [1, 2, 3, 4, 5])) # print(l) #>>> [1, 3, 5] # list(filter(lambda s: s.strip(), ['aa', '', '1'])) #>>>['

zero_130的博客 208

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

廖雪峰Python学习笔记day14

学习笔记day13 # python study day14 # 海龟绘图 # from turtle import * # 绘制矩形 # width (4) # 设置笔刷宽度 # forward(200) # 前进200 # right(90) # 右转90 # pencolor('red') # 笔刷颜色 # forward(100) # right(90) # pencolor('green') # forward(200) # right(90) # pencolor('blue') # forw

zero_130的博客 199

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

廖雪峰python3教程官网_廖雪峰Python3教程---实战day1-day13总结

首先是工程文件架构:结构图当然最后我们只完成www部分。然后分析一下整个博客网站的架构:基于asyncio(异步io协程,异步编程的一个原则:一旦决定使用异步,则系统每一层都必须是异步,“开弓没有回头箭”。)Day2初步编写app.py,实现首页对http的请求Day3编写ORM.py,这是个大坑,超级重要,涉及到后台数据库相关。Web App里面有很多地方都要访问数据库。访问数据库需要创建数据库...

weixin_39630855的博客 324

python3基础教程廖雪峰云-廖雪峰Python3教程---实战day1-day13总结

首先是工程文件架构:结构图当然最后我们只完成www部分。然后分析一下整个博客网站的架构:基于asyncio(异步io协程,异步编程的一个原则:一旦决定使用异步,则系统每一层都必须是异步,“开弓没有回头箭”。)Day2初步编写app.py,实现首页对http的请求Day3编写ORM.py,这是个大坑,超级重要,涉及到后台数据库相关。Web App里面有很多地方都要访问数据库。访问数据库需要创建数据库...

weixin_37988176的博客 1353

Python廖雪峰实战web开发(Day13-提高开发效率)

在编写handler时,每次修改Python代码,都必须在命令行先Ctrl-C停止服务器,再重启,改动才能生效。 有没有办法让服务器检测到代码修改后自动重新加载呢? 思路是检测www目录下的代码改动,一旦有改动,就自动重启服务器。 按照这个思路,我们可以编写一个辅助程序pymonitor.py,让它启动webapp.py,并时刻监控www目录下的代码改动,有改动时...

banmao8461的博客 236

Python学习笔记:Day13 提升开发效率

前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖子,廖雪峰的课程连接在这里:廖雪峰 Python的相关介绍,以及它的历史故事和运行机制,可以参见这篇:python介绍 Python的安装可以参见这篇:Python安装 Python的运行模式...

去向前方的博客 494

python基础教程廖雪峰云-Python3基础教程-廖雪峰[带标签完整版]

标签:Python教程... 5Python简介... 7安装Python. 12Python解释器... 16第一个Python程序... 18使用文本编辑器... 19Python代码运行助手... 25输入和输出... 28Python基础... 32数据类型和变量... 33字符串和编码... 43使用list和tuple. 53条件判断... 60循环... 64使用dict和set 6...

q6q6q的专栏 1901

Python-First day

Python First Day

xiangkouyizhimao的博客 335

python入门教程廖雪峰-Python3基础教程-廖雪峰[带标签完整版]

标签:Python教程... 5Python简介... 7安装Python. 12Python解释器... 16第一个Python程序... 18使用文本编辑器... 19Python代码运行助手... 25输入和输出... 28Python基础... 32数据类型和变量... 33字符串和编码... 43使用list和tuple. 53条件判断... 60循环... 64使用dict和set 6...

weixin_37988176的博客 2003

python3廖雪峰视频_Python3基础教程-廖雪峰[带标签完整版]

标签:Python教程... 5Python简介... 7安装Python. 12Python解释器... 16第一个Python程序... 18使用文本编辑器... 19Python代码运行助手... 25输入和输出... 28Python基础... 32数据类型和变量... 33字符串和编码... 43使用list和tuple. 53条件判断... 60循环... 64使用dict和set 6...

weixin_39812533的博客 244
上一篇: 廖雪峰Python学习笔记day12
下一篇: 廖雪峰Python学习笔记day14
zero_130
博客等级 码龄10年 21粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值