我需要使用 python 设计一个程序,它会要求用户输入条形码。然后,使用这个条形码,它将搜索一个 mysql 以找到其对应的产品。
我对如何开始有点困惑。有人对我有什么建议吗?
我需要使用 python 设计一个程序,它会要求用户输入条形码。然后,使用这个条形码,它将搜索一个 mysql 以找到其对应的产品。
我对如何开始有点困惑。有人对我有什么建议吗?
使用python-mysql。它是一个兼容 dbapi 的模块,可让您与数据库通信。
import MySQLdb
user_input = raw_input("Please enter barcode and press Enter button: ")
db = MySQLdb.connect(passwd="moonpie",db="thangs")
mycursor = db.cursor()
mycursor.execute("""SELECT name, price FROM Product
WHERE barcode = %s""", (user_input,))
# calls fetchone until None is returned (no more rows)
for row in iter(mycursor.fetchone, None):
print row
如果您想要更高级的东西,请考虑使用SQLAlchemy作为层。它可以让你做:
product = session.query(Product).filter(Product.barcode == user_input).scalar()
print product.name, product.price
条形码只是一系列字符(字母数字)的图形表示
因此,如果您有一种方法让用户输入此代码(条形码扫描仪),那么它只是查询 mysql 数据库以获取字符串的问题。
这是一个非常模棱两可的问题。根据您实际想要做的事情,您可以通过多种方式完成您想要做的事情。
您的用户将如何输入条形码?他们会使用条形码扫描仪吗?他们是否手动输入条形码编号?
这是要在台式机/笔记本电脑上运行还是要在手持设备上运行?
条形码扫描仪是存储条形码以供以后检索,还是将它们直接发送到计算机。它会通过 USB 电缆还是无线发送它们?
首先,将条形码输入视为普通的旧文本。
自从我使用条形码扫描仪以来已经有一段时间了,但我怀疑它们已经发生了很大的变化,旧的那些过去只是搭载键盘输入,所以从编程的角度来看,最终结果是一个字符流键盘缓冲区,无论是键入还是扫描都没有区别。
如果您的目标设备与此不同,您将需要编写一些东西来处理它,然后再进行数据库查询。
如果您有其中一种设备可以玩,请将其插入,启动记事本,开始扫描一些条形码,看看会发生什么。