电子说
建议直接用python编写一个网页服务器,然后就在本机用浏览器来使用。
简单介绍一下这样做的好处:
【1】python的桌面GUI模块都不太好用,比如pyQT需要额外安装很大的QT,tkinter则相关文档很少,而且对新的控件支持不太好,远不能和html5+css3搭配起来构建的多姿多彩的用户界面相比;
【2】任何单纯的桌面程序都需要安装,变成网页服务器后,依然可以拿到客户机来安装,更好的是可以在服务器安装后,所有客户端都可以联机到服务器进行访问,这样软件的升级就无需重新一一部署;
基于上面的原因,还是建议用web server的方式。
下面简单介绍采用flask来编写一个简单的程序:把英尺转换为米:1英尺 = 0.3048米。
首先是服务器端代码:server.py
import flask as fkapp = fk.Flask(__name__)@app.route(“/”, methods=[“GET”, “POST”])def index(): if fk.request.method == “POST”: feet = float(fk.request.form[‘entry_feet’]) meters = feet * 0.3048 return fk.render_template(“index.html”, meters=meters, feet=feet) else: return fk.render_template(“index.html”, meters=0.3048, feet=1)if __name__ == “__main__”: app.run(host=“0.0.0.0”, debug=True)
接下来是模板文件index.html,注意该文件在server.py所在目录的templates目录下:
《!DOCTYPE html》《html lang=“en”》《head》 《meta charset=“UTF-8”》 《title》feet to meter《/title》 《link rel=“stylesheet” href=“https://cdn.bootcss.com/bootstrap/4.0.0/css/bootstrap.min.css” integrity=“sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm” crossorigin=“anonymous”》《/head》《body》 《form action=“/” method=“post” class=“form”》 《div class=“card” style=“width: 24rem;”》 《div class=“card-body”》 《h5 class=“card-title”》Feet to Meters《/h5》《hr》 《label for=“input_feet”》输入:《/label》 《input type=“text” id=“input_feet” name=“entry_feet” value={{feet}} class=“form-control”/》 《label》英尺《/label》 《label 》--》《/label》 《input type=“text” id=“output_meters” value={{meters}} class=“form-control” readonly/》 《label 》米《/label》 《hr》 《button type=“submit” class=“btn btn-primary btn-block”》转换《/button》 《/div》 《/div》 《/form》《/body》《/html》
在命令行下运行: python server.py
然后在浏览器(本机的话)输入地址:http://localhost:5000/,
下面是效果:
《img src=“https://pic4.zhimg.com/v2-34baccc98de71156b3f6bc4f57c6c481_b.jpg” data-caption=“” data-size=“normal” data-rawwidth=“578” data-rawheight=“516” data-default-watermark-src=“https://pic3.zhimg.com/v2-58b9effab00eaa45fe3939db4450ba26_b.jpg” class=“origin_image zh-lightbox-thumb” width=“578” data-original=“https://pic4.zhimg.com/v2-34baccc98de71156b3f6bc4f57c6c481_r.jpg”》
全部0条评论
快来发表一下你的评论吧 !