Python企业编码生成系统之系统主要函数设计详解
本文实例讲述了Python企业编码生成系统之系统主要函数设计。分享给大家供大家参考,具体如下:
一主要函数功能描述
二mkdir函数实现
#创建文件夹函数 defmkdir(path): isexists=os.path.exists(path)#判断文件夹路径是否存在 ifnotisexists:#如果文件夹路径不存在 os.mkdir(path)#创建要创建的文件夹
三openfile函数实现
#读取文件内容函数 defopenfile(filename): f=open(filename)#打开指定文件 fllist=f.read()#读取文件内容 f.close()#关闭文件 returnfllist#返回读取的文件内容
四inputbox函数实现
#输入验证函数,showstr为input函数提供动态输入提示文字,showorder提供验证方式,length提供要求输入数据的长度
definputbox(showstr,showorder,length):
instr=input(showstr)#使用input函数要求用户输入信息,showstr为输入提示文字
iflen(instr)!=0:#输入数据的长度不为零
#根据输入数据的要求,分成三种验证方式验证,1:数字,不限位数;2:字母;3:数字且有位数要求
ifshoworder==1:#验证方式,数字格式,不限位数,大于零的整数
ifstr.isdigit(instr):#验证是否为数字
ifinstr==0:#验证数字是否为0,如果是,要求重新输入,返回值为0
print("\033[1;31;40m输入为零,请重新输入!!\033[0m")#要求重新输入,返回值为“0”
return"0"#函数返回值为“0”,为什么返回值为“0”呢?读者思考一下
else:#如果输入正确,返回输入的数据给返回值
returninstr#将输入的数据传给函数返回值
else:#如果输入不是数字,要求用户重新输入,函数返回值为“0”
print("\033[1;31;40m输入非法,请重新输入!!\033[0m")#要求用户重新输入
return"0"#函数返回值为“0”
ifshoworder==2:#验证方式2,要求字母格式,且是三个字母
ifstr.isalpha(instr):#判断输入是否为字母
iflen(instr)!=length:#判断输入的是否为三个字母,如果不是,则要求重新输入,返回值为“0”
print("\033[1;31;40m必须输入三个字母,请重新输入!!\033[0m")#要求重新输入
return"0"#返回值为“0”
else:#如果输入是三个字母,返回输入的字母
returninstr#将函数返回值设置为输入的字母
else:#如果输入不是字母
print("\033[1;31;40m输入非法,请重新输入!!\033[0m")#要求重新输入
return"0"#返回值为“0”
ifshoworder==3:#验证方式3,要求数字格式,且输入数字位数有要求
ifstr.isdigit(instr):#验证是否为数字
iflen(instr)!=length:#验证输入数字是否为要求长度位数,如果不是3位数字,则要求重新输入
print("\033[1;31;40m必须输入"+str(length)+"个数字,请重新输入!!\033[0m")#要求重新输入
return"0"#返回值为“0”
else:#输入数字满足要求,设置函数返回值为输入信息
returninstr#设置函数返回值为输入信息
else:#如果输入不是数字
print("\033[1;31;40m输入非法,请重新输入!!\033[0m")#提示输入非法,要求重新输入
return"0"#函数返回值为“0”
else:#如果没有输入任何内容,即输入为空
print("\033[1;31;40m输入为空,请重新输入!!\033[0m")#提示输入为空,要求重新输入
return"0"#函数返回值为“0”
五wfile函数实现
#实现屏幕输出和文件输出编码信息函数,#sstr参数为输出防伪码数据,sfile为输出的文件名称
#typeis设置输出完成后是否通过信息框提示,smsg为信息提示框的提示文字,datapath保存防伪码的文件夹
defwfile(sstr,sfile,typeis,smsg,datapath):
mkdir(datapath)#调用该函数创建文件夹
datafile=datapath+"\\"+sfile#设置保存防伪码的文件(包含路径)
file=open(datafile,'w')#打开保存防伪码的文件,如果文件不存在,则创建该文件
wrlist=sstr#将防伪码信息赋值给wrlist
pdata=""#清空变量pdata,pdata存储屏幕输出的防伪码信息
wdata=""#清空变量wdata,wdata存储保存到文本文件的防伪码信息
foriinrange(len(wrlist)):#按条循环读取防伪码数据
wdata=str(wrlist[i].replace('[','')).replace(']','')#去掉字符的中括号
wdata=wdata.replace(''''','').replace(''''','')#去掉字符的引号
file.write(str(wdata))#写入保存防伪码的文件
pdata=pdata+wdata#将单条防伪码存储到pdata变量
file.close()#关闭文件
print("\033[1;31m"+pdata+"\033[0m")#屏幕输出生成的防伪码信息
iftypeis!="no":#是否显示“输出完成”的信息提示框。如果typeis的值为“no”,不现显示
#显示“输出完成”的信息提示框。显示信息包含防伪信息码的保存路径
tkinter.messagebox.showinfo("提示",smsg+str(len(randstr))+"\n防伪码文件存放位置:"+datafile)
root.withdraw()#关闭辅助窗口
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《PythonSocket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。