This article mainly introduces in detail the python implementation of supermarket scanner billing, which has a certain reference value. Interested friends can refer to
python implementation The supermarket code scanner billing program mainly uses the supermarket code scanner to scan the barcode of the product, read the product information, and implement the billing function. The main technologies used are serial communication and database operations. The required environments include: python environment, mysql, python library (serial, MySQLdb), etc.
The main process of this program is: use a barcode scanner to scan the product barcode, obtain the product barcode through serial communication, obtain product information through the barcode, display the product information and calculate the total cost. The product information is stored in the database, which can be imported in advance or manually. Mine is imported in advance (you can also import the information while scanning). The information imported into the database is as follows:
The program code is as follows:
#coding:utf8 import serial import MySQLdb ser = serial.Serial('COM5',9600) #获取一行信息 def recv(serial): data = '' while serial.inWaiting() > 0: data += serial.read(1) return data def GetInfo(db,data): data = data[0:-1] #最后面有一个空格,需要去掉,否则会影响读数据库 print data ret = 0.0 try: cur = db.cursor() sql="set names utf8" #这一条语句是告诉数据库编码方式为 utf8 cur.execute(sql) sql = "select * from productinfo where code=%s"%(data) #print sql cur.execute(sql) #sql = "select * from productinfo where(code=%s)" #cur.execute(sql,data) results = cur.fetchall() #print results for row in results: code = row[0] #print code price = row[1] #print price info = row[2] #print info ret = price #解析出来的信息可能为中文,直接print肯定是不行的,需要转化为windows下的GBK编码 print 'coding=',row[0],'price=',row[1],'info=',info.decode('UTF-8').encode('GBK') except: print 'it has no infomation about %s'%(data) return ret db = MySQLdb.connect('localhost','root','',"zou",3306,'utf8') cursor = db.cursor() #cursor.execute("DROP TABLE IF EXISTS productinfo") ''''' sql="""CREATE TABLE productinfo( code CHAR(18), price double(9,2), info CHAR(25))""" cursor.execute(sql) ''' sum = 0.0 while True: data = recv(ser) if data != '': #print data sum += GetInfo(db,data) print '总付款:',sum db.close() ser.close()
Since I have just started learning python, the code specification is not very good yet. I hope everyone can point it out. Finally The program runs as follows:
Chinese can be used in my program (it didn’t display at the beginning? It just displayed garbled characters). I talked about this problem in my previous blog, Need to deal with the database and how the data read from the database is encoded. If you see any mistakes or have any comments, please leave a message.
Related recommendations:
Python implementation example of how to calculate the value of pi to any position
Python implementation of a simple Taobao flash sale function
The above is the detailed content of Python implements supermarket scanner billing. For more information, please follow other related articles on the PHP Chinese website!

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于Seaborn的相关问题,包括了数据可视化处理的散点图、折线图、条形图等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于进程池与进程锁的相关问题,包括进程池的创建模块,进程池函数等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于数据类型之字符串、数字的相关问题,下面一起来看一下,希望对大家有帮助。

VS Code的确是一款非常热门、有强大用户基础的一款开发工具。本文给大家介绍一下10款高效、好用的插件,能够让原本单薄的VS Code如虎添翼,开发效率顿时提升到一个新的阶段。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于numpy模块的相关问题,Numpy是Numerical Python extensions的缩写,字面意思是Python数值计算扩展,下面一起来看一下,希望对大家有帮助。

pythn的中文意思是巨蟒、蟒蛇。1989年圣诞节期间,Guido van Rossum在家闲的没事干,为了跟朋友庆祝圣诞节,决定发明一种全新的脚本语言。他很喜欢一个肥皂剧叫Monty Python,所以便把这门语言叫做python。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

WebStorm Mac version
Useful JavaScript development tools

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Atom editor mac version download
The most popular open source editor