Python函数应用:生成二维码和条形码
Python作为一门高级语言,不仅可以用于数据分析、机器学习等领域,还可以用于生成二维码和条形码。在实际工作中,我们可能需要将一些信息通过二维码或条形码进行传输和交互。下面就来了解一下Python中如何生成二维码和条形码。
1、生成二维码
二维码(QR Code)是一种二维码码制,通过在二维平面上分布黑白相间的小正方形来记录数据的一种自动识别技术。在Python中,我们可以使用qrcode库来生成二维码。
安装qrcode库:
在终端(Linux和MacOS)或命令提示符(Windows)中输入以下命令来安装qrcode库:
pip install qrcode
生成二维码:
下面是一个简单的Python程序,可以生成一个简单的二维码图片:
import qrcode
data = 'hello, world!'
img = qrcode.make(data)
img.save('hello.png')
上述代码中,我们先通过qrcode.make()函数生成二维码图片,然后通过img.save()函数将生成的图片保存到本地。
在运行完上述代码后,程序会将生成的二维码图片保存在当前目录下的hello.png文件中。
我们也可以生成带有Logo的二维码图片:
import qrcode
from PIL import Image
data = 'hello, world!'
img = qrcode.make(data)
icon = Image.open('logo.png')
img_w,img_h = img.size
icon_w,icon_h=icon.size
factor = 4
size_w = int(img_w / factor)
size_h = int(img_h / factor)
icon_w = icon_w if icon_w < size_w else size_w
icon_h = icon_h if icon_h < size_h else size_h
icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS)
w = int((img_w - icon_w) / 2)
h = int((img_h - icon_h) / 2)
img.paste(icon, (w, h), mask=None)
img.save('hello.png')
上述代码中,我们先创建二维码图片,然后打开Logo图片,并指定大小。然后我们缩小Logo图片的大小,使其可以放在二维码中。最后将Logo图片粘贴到二维码中心,并保存生成的图片。
2、生成条形码
条形码(Barcode)是一种表示数据的机器可读形式,使用具有差异间距的垂直线和宽度不同的水平线。条形码常用于商品库存管理,图书馆书籍管理等领域。在Python中,我们可以使用python-barcode库来生成条形码。
安装python-barcode库:
在终端(Linux和MacOS)或命令提示符(Windows)中输入以下命令来安装python-barcode库:
pip install python-barcode
生成条形码:
下面是一个简单的Python程序,可以生成一个简单的EAN-13条形码图片:
import barcode
from barcode.writer import ImageWriter
data = '5901234123457'
ean = barcode.get('ean13', data, writer=ImageWriter())
filename = ean.save('ean13_barcode')
上述代码中,我们通过barcode.get()函数生成EAN-13条形码图片,然后通过ean.save()函数将生成的图片保存到本地。
在运行完上述代码后,程序会将生成的EAN-13条形码图片保存在当前目录下的ean13_barcode.png文件中。
除了EAN-13外,python-barcode库还支持生成多种条形码,包括EAN-8、UPC-A、CODE39、CODABAR等。
总结:
本文中,我们介绍了如何用Python生成二维码和条形码。我们使用了qrcode库生成二维码图片,并且添加了Logo。同时,我们也使用了python-barcode库生成条形码图片,其中包括EAN-13、EAN-8、UPC-A、CODE39、CODABAR等。通过这些Python程序,我们可以轻松地生成二维码和条形码来记录和传递数据。
