Python如何使用qrcode生成指定内容的二维码并在GUI界面显示
作者:散一世繁华,颠半世琉璃 时间:2022-06-29 21:41:26
前言
现如今我们生活在一个二维码的时代,生活中处处都是二维码,支付要使用二维码,微信加好友要使用二维码,乘坐公共交通要使用二维码,那么,如果要你使用python语言生成指定内容的二维码,你该怎么做呢?下面我就来带你走进qrcode的世界吧!
1.下载所需的模块
qrcode是二维码生成的Python开源库,而kinter模块(“Tk 接口”)是Python的标准Tk GUI工具包的接口。
pip install qrcode
pip install tkinter
下载完毕后在相应的项目中导入相应的模块即可
import qrcode
import tkinter
2.生成指定内容的二维码
函数 | 描述 |
---|---|
qrcode.QRCode() | 生成一个QRCode实例 |
add_data(content) | 将content内容添加到QRCode实例中 |
make() | 生成指定内容的二维码 |
make_image() | 生成二维码图片 |
save(path) | 将指定图片保存到path路径下 |
def mk_qrcode(content):
q = qrcode.QRCode()#创建一个QRCode实例
q.add_data(content)# 给二维码添加内容
q.make() #生成二维码
#生成图片
img = q.make_image()
# 保存图片
img.save(filename)
3.加载二维码到GUI窗口上显示
函数 | 描述 |
---|---|
tkinter.Tk() | 生成一个窗体对象 |
tkinter.Canvas() | 生成一个画布对象 |
tkinter.PhotoImage() | 创建一个图片对象 |
create_image() | 将图片加载到画布上 |
pack() | 显示画布 |
mainloop() | 使窗体一直运行 |
具体代码如下所示:
def show():
tk = tkinter.Tk() # 创建一个窗体对象
canvas = tkinter.Canvas(tk, width=400, height=400, bg='pink') #创建一个画布
img = tkinter.PhotoImage(file=filename) # 创建一个图片对象
canvas.create_image(200, 200, image=img) #将此图片加载到画布上
canvas.pack() #显示画布
tk.mainloop() # 使窗体一直运行
4.全部代码展示
import qrcode
import tkinter
filename = '二维码.png'
def mk_qrcode(content):
q = qrcode.QRCode()
q.add_data(content)# 给二维码添加内容
q.make() #生成二维码
#生成图片
img = q.make_image()
# 保存图片
img.save(filename)
def show():
tk = tkinter.Tk() # 创建一个窗体对象
canvas = tkinter.Canvas(tk, width=400, height=400, bg='pink') #创建一个画布
img = tkinter.PhotoImage(file=filename) # 创建一个图片对象
canvas.create_image(200, 200, image=img) #将此图片加载到画布上
canvas.pack() #显示画布
tk.mainloop() # 使窗体一直运行
if __name__ == '__main__':
result = input('请输入指定内容:').strip()
mk_qrcode(result)
show()
5.运行结果展示
使用微信扫描对应的二维码后的结果为:
总结
来源:https://blog.csdn.net/qq_51447436/article/details/126734845
标签:qrcode,生成,二维码
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
sql server删除前1000行数据的方法实例
2024-01-18 14:47:39
![](https://img.aspxhome.com/file/2023/5/104115_0s.png)
详解duck typing鸭子类型程序设计与Python的实现示例
2022-12-26 07:12:19
js实现input+select组合 抛砖引玉
2010-08-02 12:34:00
Python下调用Linux的Shell命令的方法
2023-08-10 01:43:17
Ext.js源码研读总结
2009-03-04 12:06:00
php实现pdo数据库操作类过程详解
2023-05-25 11:15:05
GO语言利用K近邻算法实现小说鉴黄
2023-06-21 17:15:25
vuex中使用对象展开运算符的示例
2024-05-28 15:59:44
解决Git Bash中文乱码的问题
2023-04-07 09:50:40
![](https://img.aspxhome.com/file/2023/1/131771_0s.jpg)
Python数据可视化实现多种图例代码详解
2022-02-11 04:01:38
![](https://img.aspxhome.com/file/2023/5/103665_0s.jpg)
Python如何存储数据到json文件
2023-11-24 14:31:12
![](https://img.aspxhome.com/file/2023/7/131367_0s.png)
Golang中goroutine和channel使用介绍深入分析
2023-07-07 16:51:48
asp函数InstrRev()介绍及获取文件名例子
2007-11-19 19:01:00
如何在一段文字里点一下就可以在里面插入一段文字?
2024-04-19 09:55:31
Python采集情感音频的实现示例
2023-06-11 23:17:10
![](https://img.aspxhome.com/file/2023/6/75076_0s.png)
oracle11g卸载完整图文教程
2024-01-26 18:23:42
![](https://img.aspxhome.com/file/2023/4/65254_0s.png)
python实现的文件夹清理程序分享
2021-07-20 07:58:57
Python连接mysql方法及常用参数
2024-01-15 00:33:54
掀起抛弃IE6的高潮吧
2009-02-26 12:44:00
Python用requests库爬取返回为空的解决办法
2021-10-30 04:54:29
![](https://img.aspxhome.com/file/2023/9/124329_0s.jpg)