范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

PythonGUI的web桌面程序的代码优化讲解

  1 说明:
  =====
  1.1 Eel是一个轻量的python桌面GUI开发第三方库,中文教程很少。
  1.2 有很多优点:轻量级、导入eel.js独有的特色、代码简洁、与python结合很好。
  1.3 环境和安装,暂时省略,可以看看我前面的有关文章,讲解通俗易懂,一秒看懂,亲测。
  2 源代码:
  ======
  2.1 来源:https://github.com/JustZion/Python-eel-GUI-example-list_my_files-
  2.2 修改:
  源代码是win操作系统,修改为linux操作系统;
  源代码是python2,修改为python3;
  源代码eel是版本,修改最新版本;
  源代码js和css为本地引用,改为在线引用等等。
  2.3 修改后的文件结构:
  一个eelfile.py和一个web文件夹(web文件内有一个file.js和一个find_files.html共2个文件)。
  3 文件代码讲解:
  ============
  3.1 eelfile.py代码:#导出模块,也可以一行导入法 import eel import os import random import time #全局变量p的声明 global p #	表示空四个字符,也称缩进,相当于按一下Tab键 p = "	" #随机端口定义 a= random.randint(1000,50000) eel.init("web")  """ #新版eel中这个不需要,故注释掉 options = {     "host": "localhost",     "port": a     } """ curr_dir = os.getcwd() eel.show_dir(curr_dir) #将这个原始路径放在这里 original = os.getcwd()  def main(a,count):     b = os.listdir(a)     count = count     if b == "":     	pass     elif b != "":     	for c in b:     		m = os.getcwd()     		if os.path.isdir(c):     			os.chdir(c)     			y = os.getcwd()     			eel.show_dir(y)     			count += 1     			l = p*count+"__" +c+" "     			eel.find_the_files(l)     			mainn(y,count)     			os.chdir(m)     			eel.show_dir(m)     			count -= 1     		else:     			count += 1     			eel.show_dir(m)     			l = p*count+"__" +c+" "     			eel.find_the_files(l)     			count -= 1     		 def mainn(a,aa): 	k = aa 	d = os.listdir(a) 	if d == "": 		pass 	elif d != "": 		for e in d: 			l = os.getcwd() 			if os.path.isdir(e): 				os.chdir(e) 				eel.show_dir(e) 				o = os.getcwd() 				k += 1 				fil = p*k+"__" +e+" " 				eel.find_the_files(fil) 				main(o,k) 				os.chdir(l) 				eel.show_dir(l) 				k -= 1 			else: 				k += 1 				fil = p*k+"__" +e+" " 				eel.show_dir(l) 				eel.find_the_files(fil) 				k -= 1 #将函数暴露给js,便于调用 @eel.expose #定义这个函数 def automate(a):     #original = os.getcwd() #注释掉,放在前面     #global original  #放在这里报错,注释掉     try:         os.chdir(a)         cw = os.getcwd()         eel.show_dir(cw)         #print "....successful" #注释掉,并且原来是python2的写法,没有括号         yy = -1         eel.starting()         start_time = time.time()         main(cw,yy)         stop_time = time.time()         time_taken = str(stop_time - start_time)         #print time_taken #注释掉,并且原来是python2的写法,没有括号         eel.done(time_taken[:7])     except:         print("failed") #改为python3的写法,当然也可以注释掉,如果注释点,记得加:pass  #将函数暴露给js,便于调用   @eel.expose #定义这个函数 def back():     os.chdir(original)     eel.show_dir(original)      #下面是旧版本eel的写法,新版本不需要options       #eel.start("find_files.html",size = (400,600), options = options,block= False) eel.start("find_files.html",size = (400,600), block= False)  while True:     eel.sleep(3)
  3.2 find_files.html代码:                         Powered by Python Eel                                                            

....Waiting

Enter the directory

Current directroy: >   3.3 file.js代码// file按钮(search)的点击事件 $(".file").click(function() { var a = document.querySelector(".dir").value; eel.automate(a) }) // 定义函数,暴露给python,便于调用 eel.expose(find_the_files) function find_the_files(files) { document.querySelector(".data_entry").value += files } // 定义done函数,暴露给python,便于调用 eel.expose(done) function done(n) { document.querySelector(".process_check").innerHTML = "...Finished in "+n+" seconds"; } //定义函数,暴露给python,便于调用 eel.expose(starting) function starting() { document.querySelector(".process_check").innerHTML = "...Loading"; } // back按钮的点击事件 $(".back").click(function() { //调用python的定义的back函数功能 eel.back() document.querySelector(".data_entry").value = ""; document.querySelector(".process_check").innerHTML = "...Waiting"; }) //定义函数,暴露给python,便于调用 eel.expose(show_dir) function show_dir(a) { document.querySelector(".curr_dir").innerHTML = a; }   3.4 效果图   Eel的中文介绍太少了,我整理,分享出来,希望更多人喜欢Eel,并开发更多的中文学习资料,共同进步。   喜欢的人,请点赞,转发,收藏。分享知识快乐。


含寄生虫最多的2种蔬菜,没营养还贵,菜贩子宁愿丢掉也不吃如果你也喜欢美食,点击关注,每天不断更新精彩内容!导语含寄生虫最多的2种蔬菜,没营养还贵,菜贩子宁愿丢掉也不吃!相信大家也知道,每年到了当下这个季节的时候,天气比较燥热,昼夜温差又含寄生虫最多的2种鱼,没营养还伤身体,鱼贩子从来不吃如果你也喜欢美食,点击关注,每天不断更新精彩内容!导语含寄生虫最多的2种鱼,没营养还伤身体,鱼贩子从来不吃!相信大家也知道,每年到了当下这个季节的时候,天气比较炎热,昼夜温差比较大3。孩子真的是一张白纸吗?也许婴儿最能说明这件事01孩子是一张白纸孩子是一张白纸这句话在老师家长群体里特别流行。如果孩子是一张白纸,大人就是拿着画笔的那个人,可以按照自己的意图来构思涂抹,创作出自己心目中理想的图画。孩子仿佛是大从小吃手指和不吃手指的孩子,长大后差距明显,家长收藏很多宝宝小时候,总爱吃手指。不仅吃手,等能坐起来,他抱着脚丫子也能啃好半天。有些家长看不下去,就把宝宝的手拿开。但没过一会,他又开始忘情地啃手指头了。一赞同派VS反对派对于让不让孩再苦也不要让孩子住校,班主任谈寄宿带来的伤害,很真实大家好,我是布谷妈。进入紧张的开学季,送侄女去学校时,她跟我说姑姑,我要住宿了,有点害怕。她的害怕,我是完全能理解,甚至有些担忧的。她从小被爷爷奶奶溺爱带大,可是说生活中的事几乎不我们为什么会在乎分享欲?文柒先生图海岸村恰恰恰1hr你怎么理解分享?一个蛋糕,你一口,他一口。或者,你拿面粉,他拿鸡蛋,好像缺点什么,然后,你们查了食谱,去超市买了白砂糖,植物油,牛奶,甚至还有某人喜欢的双一流评选倒计时!江苏3所有望晋升,已有15所或将再续辉煌江苏作为我国的教育强省,这几年发展势头日渐猛进!截至目前为止,江苏拥有15所双一流大学,还有两所南京大学和东南大学入选985工程,尽管如今,985211或将合并成为双一流。这种评比瞩目!广西3所黑马高中,升学率近100,其中1所清北录取33人教育,不分国界不分种族,每个人都有享受优质教育的权力与义务!近期,广西桂林的石智勇夺得男子举重73公斤级的奥运冠军,打破了世界记录,事实上,在2016年,这位小伙子便获得了举重冠军ampampquot双一流ampampquot争霸在即!山西提出ampampquot保2争3ampampquot,外地人萤火之光不可争辉双一流大学是对我国高等院校的教育水平在全国乃至全世界的一个评比,进入双一流不管在信用度招生合作等方面都将会有大幅度的改进!山西省,到目前为止,只有一所211大学,也是一所双一流,就一块被北大录取!山东双胞胎ampampquot学霸ampampquot,从不上补习班,父亲功不可没北大是很多文人墨客聚集的地方,近期的觉醒年代也让北大提高了知名度,报考人数明显增多!北京大学作为我国文科类的高等学府,实力非常强悍,如果一个省份有考上北大的,是值得所有人高兴的事情新概念英语笔记第一册第010课Lesson10Lookatbegin本课引入了一个新的常用句子lookatnoun,意思等价于汉语里的看看noun。这个句子从形式上看是个省略句,因为没有主语嘛。它的原型则是主谓
买个大熊猫判十年,买个孩子还要教他感谢养育恩?一个打拐案,不知道炸出多少圣母婊。申军良被拐15年的儿子申聪终于找回来了,这是值得高兴的事情。我昨天其实就已经写了这个话题我支持申聪的养父母判刑毁了别人一生的人,不应该被法外开恩两兴宏信资讯黑心保姆事件的背后,不要再盲目相信私人家政前日,家政保姆行业又掀起波澜,黑心保姆掌掴,抱摔40天女婴事件引起人们关注,重庆的樊先生由于工作繁忙,夫妻双方没有时间照顾孩子,于是通过熟人介绍,聘请了一位保姆,樊先生的妻子在工作兴宏信浅谈精通十八般武艺的专业月嫂是什么样的前日,一篇名为价码开到12800元,竟无月嫂接单的文章刷爆了各大平台,引起人们的深思,月嫂高薪的背后,到底有哪些辛酸呢?以至于工资那么高都没人接单。兴宏信工作人员通过走访调查了解到兴宏信节气万物生长时,谷雨正来临又是一年谷雨季,首先兴宏信祝所有家政人在万物生长季不断提升,攻克艰险,克服困难。家政中苦海无涯,好工作万人难求,陪你走过晴天雨天,守护你的冷热酸甜。谷雨习俗早知道,小兴科普帮你找。兴宏信故事分享一位护工遇到的病房感动兴宏信护工王大姐在医院工作过程中,遇到了这样一件事情晚上9时,医院外科3号病房里新来了一位小病人。小病人是个四五岁的女孩。女孩的胫骨骨折,在当地做了简单的固定包扎后被连夜送到了市医兴宏信课程专业月嫂培训课,助力上岗稳就业专业护工培训才刚结束,各位学员在总部的全力安排与积极对接下,成功上户,实现了稳就业赚高薪的梦想。四月家政培训的脚步依然不停止,上岗就业赚钱的步伐依旧在进行。2021年4月9日,兴宏兴宏信家政生活困局下,平衡家庭生活需要靠它来实现伴随着人口老龄化趋势和二胎政策的社会趋势,我国家庭结构呈现出多样化的发展趋势,传统的大家庭模式逐渐消失,取而代之的是四口之家的小家庭模式,随着子女进入婚姻生活,新的四二二家庭引起人致兴宏信人岁月漫长,母爱无价母爱!它不仅是一个伟大的名词,也是世界上最美好的情感!有母亲在的时候,人的心最温暖有妈妈最幸福!如果说世间的爱是生命和时间撞击的声音,那么母爱就是流淌在血液中的无私和美好,是一种可兴宏信科普因为说错一句话下户,学会沟通真的很重要对于大部分家政阿姨来讲,学会沟通是成功上户的第一步,如果能沟通好,不仅彼此之间都有舒畅的心情,也可以积攒更多的人脉,更可以在以后的上户工作中,及时了解雇主需求,让自己的家政生涯更加兴宏信立夏夏已至,万物皆长成今日是立夏,立夏是农历二十四节气中的第七个节气,也是夏季的第一个节气,立夏之初,为万物生长之际,礼记月令解释立夏为蝼蝈鸣,蚯蚓出,王瓜生,苦菜秀。这一时节,蛙类动物开始在田间塘畔鸣兴宏信资讯浅析中国家政行业发展背景与用户画像中国城镇化进程推进提升家庭小型化人口老龄化以及全面二孩政策等社会变迁因素为家政服务业提供潜在的消费需求,加上居民购买力有所提升,中国家政行业市场规模持续扩大。中国家政服务行业发展背