lanmor_699 2022-07-04 23:29 采纳率: 78.9%
浏览 54
已结题

写程序ui界面和生成exe文件

问题遇到的现象和发生背景

计算程序已经写好,需要写一个ui并生成exe
需要用tkinter写一个程序的ui,然后生成exe

问题相关代码,请勿粘贴截图

import tkinter as tk
import pandas as pd
import re
window = tk.Tk()
window.title('价格计算程序')
window.geometry('500x250')#乘号是字母x

e = tk.Entry(window,show=None)
e.pack()
detail = e.get()

detail实际要输入的内容: '木香750克,排草500克,桂枝400克,母丁香750克,红扣500克 枳壳500克,青果500克,烟桂500克,山楂400克、毛桃400克,干八角500克。'

def shuru():
data = pd.read_excel(r'C:\Users\Administrator\Desktop\价格别名表.xlsx', sheet_name=0) # 读取表格原始数据
# 提取表格中每一列的数据
name1 = data['名称']
# 价格的单位为克
price1 = data['价格1']
price2 = data['价格2']
price3 = data['价格3']
alias = data['别名']

2.将文本进行分离,并将名字,数量和单位分别存入列表

test = re.findall('([\u4e00-\u9fa5A-Za-z]+)(\d+)([\u4e00-\u9fa5A-Za-z]+)', detail)
# print(test)
name = [x[0] for x in test]
num = [int(x[1]) for x in test]
unit = [x[2] for x in test]
index = range(1, len(test) + 1)
jiage = []
amount = []
for i in range(len(name)):
    price = None
    amo = None
    for j in range(len(name1)):
        sl = alias[j].strip().split('、')
        if any(map(lambda x: x in name[i], sl)):
            name[i] = sl[0]
            if num[i] >= 250:
                price = price1[j]
            elif 100 < num[i] < 250:
                price = price2[j]
            else:
                price = price3[j]
            amo = num[i] / 500 * price
            break
    else:
        print('没找到', name[i])
    jiage.append(price)
    amount.append(amo)

img

# 3.创建字典
data = {
    "序号": index,
    "名称": name,
    "重量": num,
    "单位": unit,
    "价格": jiage,
    '金额': amount
}

# 4.创建DataFrame表格
df = pd.DataFrame(data)
# print(df)
# 5.写入excel
df.to_excel(r'C:\Users\Administrator\Desktop\结果.xlsx', index=None)

b = tk.Button(window,text='点击此处进行计算',width=12,height=2,command=shuru)
b.pack()
window.mainloop()

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

img

img

img

img

img

  • 写回答

2条回答 默认 最新

查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月13日
  • 已采纳回答 7月5日
  • 修改了问题 7月4日
  • 创建了问题 7月4日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效