当前位置 : 主页 > 编程语言 > python >

python批量生成条形码的示例

来源:互联网 收集:自由互联 发布时间:2021-04-02
在工作中,有时会遇见需要将数字转换为条码的问题,每次都需要打开条码转换的网站,一次次的转换后截图,一两个还行,但是当需要转换的数量较多时,就会显得特别麻烦,弄不好

在工作中,有时会遇见需要将数字转换为条码的问题,每次都需要打开条码转换的网站,一次次的转换后截图,一两个还行,但是当需要转换的数量较多时,就会显得特别麻烦,弄不好还会遗漏或者重复,为了解决这个问题,使用python写了以下脚本,用来解决此问题

1、安装python-barcode库和pillow库

需要导入的python库

import barcode
from barcode.writer import ImageWriter

2.将需要转换的条形码数据保存到同级目录下的 EAN.txt 内
读取EAN.txt文件并保存到 EAN_list 列表中

EAN_list = []
f = open('EAN.txt', 'r+')
while True:
  line = f.readline()
  if line == '':
    f.close()
    break
  else:
    line = eval(line)
    EAN_list.append(str(line))

3.使用for循环,将列表中的所有内容转换成EAN条形码图片,并将转换后的图片保存到当前目录

for i in EAN_list:
  EAN = barcode.get_barcode_class("code128")
  ean = EAN(i, writer=ImageWriter())
  ean.save(i + "image")

我这里使用的是128的编码,如果需要EAN8或者EAN13的编码,只需要将

EAN = barcode.get_barcode_class("code128")
中的‘code128'更换为 ‘EAN8'或者‘EAN13' 便可

完整代码如下:

import barcode
from barcode.writer import ImageWriter

EAN_list = []
f = open('EAN.txt', 'r+')
while True:
  line = f.readline()
  if line == '':
    f.close()
    break
  else:
    line = eval(line)
    EAN_list.append(str(line))

for i in EAN_list:
  EAN = barcode.get_barcode_class("code128")
  ean = EAN(i, writer=ImageWriter())
  ean.save(i + "image")

以上就是python批量生成条形码的示例的详细内容,更多关于python 生成条形码的资料请关注易盾网络其它相关文章!

网友评论