该列表生成了多个qr,但我想用与列表相同的名称保存它们

  • 本文关键字:列表 保存 qr python pandas qr-code
  • 更新时间 :
  • 英文 :

import pandas as pd
import qrcode
df = pd.read_excel("Manpower.xls")
df = df.drop(range(31,389))
lista = df.values.tolist()

for row in lista:

qr =qrcode.QRCode(version=1,box_size=2)
qr.add_data(row)
qr.make(fit=True)
img = qr.make_image()
img.save(lista+".png")

问题是,当我保存img时,它只显示一个,而不保存列表的名称。

您使用相同的名称保存所有文件,这是您的问题。如果你同意二维码的名称和二维码中的信息名称,那么你可以简单地将每个文件的名称更改为循环中的row

import pandas as pd
import qrcode
df = pd.read_excel("Manpower.xls")
df = df.drop(range(31,389))
lista = df.values.tolist()

for row in lista:

qr =qrcode.QRCode(version=1,box_size=2)
qr.add_data(row)
qr.make(fit=True)
img = qr.make_image()
img.save(row + ".png")

然而,还有其他选择。例如,可能希望将它们存储为QR1.pngQR2.png等。在这种情况下,你可以做一些类似的事情

#[...same as above before start of loop]
filename = "MyQRCodeFilename"
counter = 0
for row in lista:
#[...same as above in loop]
counter += 1 #augment counter by 1
img.save(f"{filename}_{counter}.png")

或者,如果你想要前导零,你可以做一些类似的事情

img.save(f"{filename}_{counter:04}.png")

另一种选择是,也许你想要一个时间戳:

import datetime
#[...everything the same as before...]
img.save(f"{filename}_{datetime.datetime.now().strftime('%Y-%m-%d-%H:%M:%S')}.png")

相关内容

  • 没有找到相关文章

最新更新