自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python 30行代碼內制作一個計算器

開發(fā) 前端
分享pywebio,pyinstaller的基本用法,學會了pywebio 可以讓你快速做出各種有趣使用的小工具!

分享pywebio,pyinstaller的基本用法,學會了pywebio 可以讓你快速做出各種有趣使用的小工具!

引言

2022年來了,幾個同事讓我給他們寫個展示下python能干啥。于是我給他們寫了一個計算器,讓他們看看。

本文用到一個比較有意思的庫:pywebio。

安裝

pip install pyinstaller
pip install pywebio

主程序

from pywebio import start_server
from pywebio.output import *
from pywebio.pin import *


def calc(exp):
    try:
        return f"{exp}={eval(exp)}"
    except:
        return f"{exp}:表達式不正確"


def refresh(exp):
    out = calc(exp)
    with use_scope("aa", clear=True):
        put_text(out)


def webmain():
    put_markdown("## 簡易計算器 \n 輸入計算表達式:")
    put_input("res")
    put_buttons(["計算"], lambda _: refresh(pin.res))


start_server(webmain, host="127.0.0.1", port=2022)

運行上述程序,在瀏覽器中輸入 http://127.0.0.1:2022/  ,得到如下效果:

部署

  1. 將腳本放到服務器上,發(fā)給同事一個鏈接。注意用你電腦的局域網ip代替 127.0.0.1
  2. 打包成一個軟件包,發(fā)給同事。
pyi-makespec -F main.py #-F: 打包成一個軟件包
from pywebio.utils import pyinstaller_datas # 開始增加這一句!
a = Analysis(
...
datas=pyinstaller_datas(), # 修改成一摸一樣
...
pyinstaller main.spec

在打包路徑dist文件夾下,有一個文件:main.exe,可以直接打開,或者發(fā)給同事。

本文pywebio的大包有些技巧。大多數程序的打包可以無需配置文件,直接打包即可。使用如下命令打包:

pyinstaller -F main.py -i icon.ico
  • 將打包好的軟件包發(fā)給同事
  • 使用配置文件打包成軟件包:
  • 編輯生成的配置文件(main.spec)
  • 創(chuàng)建配置文件:

總結

上面分享了pywebio,pyinstaller的基本用法,學會了pywebio 可以讓你快速做出各種有趣實用的小工具!

責任編輯:華軒 來源: 哈希編程
相關推薦

2013-03-04 10:22:30

Python

2022-03-23 10:21:56

Python代碼工具

2016-08-10 12:41:00

Linux工具bcShell

2014-05-15 09:45:58

Python解析器

2014-01-09 09:42:56

Python語言檢測器

2021-09-22 09:43:47

Python 開發(fā)編程語言

2022-08-26 08:01:38

DashWebJavaScrip

2022-06-29 09:02:31

go腳本解釋器

2022-02-18 11:51:36

Python代碼編程語言

2020-08-12 08:22:37

Python開發(fā)個稅

2022-06-28 08:17:10

JSON性能反射

2024-06-03 00:00:01

2011-09-16 14:13:15

Windows7計算器

2018-03-22 13:58:06

Python換臉程序

2017-12-25 16:20:40

Python自動化王者榮耀

2020-02-14 12:26:55

Python愛心情人節(jié)

2023-03-01 20:18:05

ChatGPTPython

2024-05-15 10:07:11

Agents人工智能CSV

2019-10-28 08:00:00

Keras神經網絡人工智能

2017-03-28 21:03:35

代碼React.js
點贊
收藏

51CTO技術棧公眾號