麻瓜编程
A. python 如何开发高效漂亮的轻量级 Web 应用
痛点
从我开始折腾数据分析工具的那一天,就没有想明白一件事儿 —— 我打算把数据分析的成果做成一个 Web 应用,为什么这么难?
我需要的核心功能,无非是在网页上接收用户输入,然后做分析处理,把分析结果反馈给用户,完事儿。
可是这谈何容易?
很多人都会微笑着告诉你,想做 Web 应用?这得学前端编程, HTML + Javascript 了解一下吧!
什么?你还需要在后台做数据分析?那你就得学 Web 框架了。
你说喜欢 Python ?那就学个 Django 或者 Flask 好了。
我也不是没有看过 Django 和 Flask 的教程,还曾经付费学习过。光是 Django 配置环境,就够写一章出来。
作为学习的中间成果,我还写了这篇《如何用 Python 做 Web 开发?——Django 环境配置》分享给你。
真正让我痛苦的,不是 Web 框架的操作有多么琐碎,而是教程里的案例,为什么都那么奇怪?
几乎所有的教程,都指向一个目标:
来,我教你做一个 blog 出来!
我用你教?!
我要是想用 blog ,可以直接注册一个免费的啊!为什么我要自己开发个 blog 出来?
为什么你就不能告诉我,该怎么把我目前的数据分析结果,迅速挪到 Web 页面上,跟用户实时交互?
虽然二者的结果,都是做一个 Web 应用出来。但是,它们关注的焦点,需要的功能,能一样吗?
但是人家写书和做教程的人,就是不疾不徐,坚持一定要教会你,如何做一个 blog 出来……
你不学,又能怎么办呢?你难道想只凭 Python 脚本,就做一个 Web 应用出来?
还真别说,最近,这个事儿从幻想,变成了现实。
样例
这不,我就用纯 Python 脚本写了个 Web 应用。
我编写的代码里,没有一丝半毫的 Web 框架,Javascript,甚至是 HTML 。
这玩意儿能用吗?
你自己来试试看。
请你打开浏览器,输入以下链接:https://helloworld-streamlit.herokuapp.com/
你会看到下面的初始化界面。
初始化完毕之后,页面会分成左右两栏。左面是两个下拉候选框,分别让你指定需要分析的数据范围。
上面一个,是事件类型;
下面一个,是事件发生归属地。
如果你看过我的文章《如何用 Python 和循环神经网络预测严重交通拥堵?》,应该对这个数据集很熟悉。
只不过,当时我们更注重的,是用循环神经网络搭建了一个严重拥堵事件预测模型。
而今天,我们是要进行探索性数据分析,也就是根据我们感兴趣的目标,对数据进行整理操作,然后可视化显示。
选定之后,你会看到右侧提示两个信息:
你筛选之后,数据框包含行数
在层叠地图上的可视化结果。
怎么样?
麻雀虽小,五脏俱全。
虽然咱们这个 Web 应用很简单,不过交互分析该有的功能和流程,基本上都涵盖了。
你可能会问:
王老师,编这么一个应用出来,不简单吧?
让我带你到幕后,看看是不是很复杂。
幕后
我把这个应用的全部源代码,都为你存储到了 Github 上。请你访问这个网址获取:https://github.com/wshuyi/demo-helloworld-streamlit
可以看到,一共包含了 4 个文件。
有意思的是,其中 3 个,包括:
Procfile
setup.sh
requirements.txt
都只是部署到远程服务器时,需要用到的配置文件而已。
也就是说,只有最后一个helloworld.py是主角,它包含了实现咱们全部交互式数据分析功能的 Python 脚本文件。
这代码,少说也得有几百行吧?
别担心,打开来看看:
上面这张截图,就已经包含了实现交互数据分析功能的全部代码。
神奇吧?
解读
这么短的代码,为什么能有如此强大的功能?
这是因为它背后使用的一个软件包,叫做streamlit。
它是干什么用的?
一言以蔽之,给你赋能,让你能够不去操心什么前端后端。只写 Python ,只关注功能,你就能写出一个交互式 Web 应用出来。
当然,既然最后是 Web 应用,那么实际上前后端的功能都是齐备的。
只不过,这些交由 Streamlit 来帮你费心操办。你根本不用管。
爆发
为什么会有人做了这么一款神器出来?
原因很简单,咱们前面提到的痛点,是大伙儿都有的。
咱们这些麻瓜(Muggle),遇到痛点只能忍着。
但是真正的魔法师(优秀程序员),是忍不了的。
在这段来自 PyData LA 2019 的视频里,Streamlit 的 CEO Adrien Treuille 谈及了他在数据智能企业中,长期遭遇的痛点。
最大的痛点,就是数据科学家训练好机器学习模型后,需要验证效果,和用户反馈沟通。
但是,做机器学习的工程师本身,并不掌握这一整套的工具栈。
所以,就得在把全部的数据分析和模型训练工作完成后,把这东西移交给一个工具制作团队。
人家做完以后,就告诉数据科学团队说,做好了。但是注意,现在处于需求冻结阶段。这个应用你们可以随便用,只是别乱改。改坏了我们管不了。因为最近两个月,我们还得给其他若干数据分析团队做 app 。大概几个月以后,我们又能回来帮助你们了……
Adrien Treuille 很敏锐地捕捉到了这个长期痛点,于是在 2018 年, 创立了 streamlit 。
目标很简单,给数据科学团队提供简单的工具,让他们使用已经掌握的 Python 编程技能,就能直接做 Web 应用。
什么 “等上两三个月不许改”?!你们自己慢慢儿玩儿去吧,我们想怎么改,就怎么改!
至于做出来的东西嘛,可以是这样的:
资源
看到这里,是不是心动了?也打算学习一下 Streamlit ?
没问题,我前面给你提供的样例,就在 github 上,你可以直接查看源码。
如果你希望重现这个小应用,并且一步步学习掌握 Streamlit 的基础知识和技能,我也已经为你写好了一份手把手的教程。地址在这里https://sspai.com/post/58474。
它不仅教你如何设置环境,安装工具,写作代码,甚至连如何免费部署到 heroku 平台,让用户使用,都毫无保留地教给了你。
那篇文章,我用于参加少数派年度征文活动,所以就不能全文展示在这里了。
读完以后,如果你觉得有收获,欢迎在少数派平台上帮我点个赞。谢谢支持!
思考
尝试过之后,你应该不难发现,Streamlit 给你带来了什么。
如果你学过 Javascript 和 Flask, Django 等 Web 应用开发技术,Streamlit 可以加快你的 Web 应用开发与测试进程。
如果你还没有学过上述技术, Streamlit 可以给你赋能,让你一下子有了把数据分析结果变成产品的能力。
给你讲点儿更激进的。
有人已经希望能用它替代掉 Flask 用于产品发布了。
还有人说,将来写技术文档,也应该充分使用 Streamlit 。
甚至,还把它比作了数据科学界的 iPhone 。
这里,它是借喻 iPhone 开启智能手机时代,说明 Streamlit 的划时代性。
我不希望你也变得如此激进。
因为这里提到的每一种功用,现在还都有非常专业的工具做的更好,而且新的工具也在不断涌现。
例如说,我们在多个教程中一直使用 Jupyter Notebook 。
现在凭借 Voila 扩展的加持,你也可以很轻松地把 Jupyter Notebook 变成 Web app ,而且可以免费运行在 mybinder 上面。
但是,你可以看到,一个新的工具,以一种简单,而不是更繁复的办法,解决一个功能痛点,是一件多么令人欣喜的事儿。
看了这篇文章,可能会给你一种误解,似乎 JavaScript 为代表的前端编程技术,再也不需要学了。
其实不是这样的。
可以想象,开发门槛降低以后,将来会有更多的人使用 Python 来做 Web 应用。
用 Streamlit 这样的方法,他们只是开发出了一个原型。
要是想打造精品,就必须精细调控很多细节。
这时候, 如果你精通 Javascript ,那你潜在的合作对象一下子就多了起来,你掌握的这门技术,也就有了更大的价值。
还记得吗?我不止一次给你强调过,比起一个工具自身的能力来,协作网络更重要。忘了的话,记得复习《学 Python ,能提升你的竞争力吗?》。
这就好像印刷术的发明,不是让会写字这件事儿变得失去价值,而是全社会都增大了对好作品的渴求。深刻的思考,加上有效的文字表达,会让你生存得更好。
当然,如果你不希望精通写作技艺,只是想做一个抄书匠糊口。那么印刷术就可能会替代你的工作,结果就不那么美妙了。
小结
这篇文章,我为你介绍了 Streamlit 这款有趣的工具。希望你读过之后,掌握了以下知识点:
借助 Streamlit ,你可以用纯 Python 编制 Web 应用;
学 Web 设计依然很有前途,因为你的潜在合作群体正在迅速扩大;
不要惹魔法师(优秀程序员)。他们的痛点需求会转化成无尽的战斗力,兴许会直接替掉你的日常工作。
更多Python知识,请关注:Python自学网!!
B. 如何将枯燥的大数据呈现为可视化的图和动画
自我介绍
本人是一个程序猿,没错就是很惨的那种程序猿。每天除了在做数据,就是在寻找BUG的路上,慢慢迷失了自我。在回答之前,我想简单介绍一下自己。我是thepaper.cn新闻版块的班代表。我擅长数据可视化视频和信息图表。喂!忍着看我这个身份,跑啊,等着你有一吨的实际干。最近有一个关于诺贝尔流动性的问题,包含了视觉图像的视频和信息,所以使用这个选题,分享一些制作过程和工具的使用,希望能够帮助到上帝和其他的人,并对这方面的熟人感兴趣。
希望你能够使用到。
C. 麻瓜编程爬虫培训怎么样
随着人工智能时代呼声渐起,Python凭借其入门简单、应用广泛的优势成为很多想要入行互联网行业的人们的首选编程语言。如果你想学一门语言,可以从语言的适用性、学习的难易程度、企业主的要求几个方面考虑。从这几个角度看,学习Python都没有什么可挑剔的。
D. python web 麻瓜编程 基础在哪
GUI库可以用wxpython或着pyqt,还有一个是pygtk。这个看个人爱好。如果不是商业用的话,pyqt还不错,比较方便。数据库组件有很多,像pysqlite,pymssql等等,看你想用什么数据库。比如想用sqlserver就直接去搜python连接sqlserver就可以了。
E. 世界上第一台电子计算机叫什么
世界上第一台计算机的名字是ENIAC(中文名:埃尼阿克)1946年2月14日,由美国军方定制的世界上第一台电子计算机“电子数字积分计算机”(ENIAC Electronic Numerical And Calculator)在美国宾夕法尼亚大学问世。
发明人是美国人莫克利和艾克特。美国国防部用它来进行弹道计算。它是一个庞然大物,用了18000个电子管,占地150平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算,这在现在看来微不足道,但在当时却是破天荒的。 ENIAC以电子管作为元器件,所以又被称为电子管计算机,是计算机的第一代。
F. 如何入门独立游戏开发
你好:
我从unity的角度来谈一下如何入门独立游戏开发。
自己周围有不少朋友自身都不是程序出身,但都想入门游戏开发。我有被询问过,自己也是自学过来的,所以谈一下自己的经验。
根据答主的情况美术出身,并不推荐学习ue4,相对unity会更加容易上手。
unity劝退很多人的理由如下:
1.官方文档全英文,界面全英文。不得不说中国unity真的麻瓜,不是我说,别人日本unity刚成立一年,就弄了一份全日文的官方文档。看看中国unity成立多久了,都在做什么,我不想吐槽了…
相对unreal4就有官方中文文档,而且还有unity转unreal4的快速上手文档,还界面全中文…
2.unity在国内的应用范围和普及程度比unreal4好太多。再加上unity在游戏行业的普及使用。所以有大量的培训机构想分一杯羹。培训机构你懂的,导致网上搜索unity得到的很多靠谱的学习信息被稀释了。
3.unity网上第三方教学渠道质量层次不齐。例如游戏蛮牛,泰课,慕课等等。我这里罗列的还是国内相对名气大的,质量还算不错的学习平台。
层次不齐的原因有几点:
教学视频的讲师口齿不清晰,还带方言。
讲师自身逻辑混乱,一个很简单的东西听的人云里雾里的
讲师拖延时间,强行凑时间。导致听的人学习热情受到打击,讲了20分钟的东西。实际最多5分钟的干货。
中文教程缺乏系统性的靠谱的免费的学习教程。这个和大量培训机构的涌入有关。
说了unity这么多的不好,我来说为什么还是推荐unity的理由:
1.unity在国内的普及程度很高,还是有很多优秀的学习资料的,不过相对零散,需要整理。我会在下文给出我自己认为不错的学习网站和学习资料和学习路线。
2.不管是unity还是unreal只要涉及到逻辑都是要写代码的。两者没有区别!!!
unity用的是c#语言,而unreal用的是c++语言。
c#比c++好学!!!
c#比c++好学!!!
c#比c++好学!!!
重要的事情说三遍!!!!!!!!
3.如果你用unity遇到问题,在网上不管是在中文环境下还是英文环境下寻求帮助会比unreal快一些。因为学unity的人多!!!
4.unity比unreal好学!!!!
正题开始!!!下面开始从unity的角度如何入门独立游戏开发:分别从代码,游戏引擎,美术,游戏设计角度来探讨。
会从入门的角度来逐一分析。下面排版可能会比较乱,我最后会集中整理网址的。想看网址的可以直接跳最后。
代码学习:
1.c#语言
因为是入门,所以只需要学会用c#来写简单的业务逻辑就可以了。不需要去学习什么高大上的框架,热更新方案和语言特性。
代码的掌握是学习和实践反复交互的过程!!!不是我现在抱着一本书啃就完事了。也不是我把一个游戏做出来我就掌握了XX语言.
c#基本语法学习途径:
C# 教程 | 菜鸟教程www.runoob.com
菜鸟教程里的信息及其适合新手学习编程语言。即使编程一点不会也可以上手轻松学习。
这本书更多会设计到线性代数和简单的几何学相关的知识,这本书能够很好得让我们了解图形学中得数学。网上有电子版可以直接搞到手,课后习题推荐做,不过有些题答案比较难找。
这本书我翻来覆去看了好几遍了,强烈安利入门用。
G. 麻瓜编程注册过商标吗还有哪些分类可以注册
麻瓜编程商标总申请量3件
其中已成功注册1件,有2件正在申请中,无效注册0件,0件在售中。
经八戒知识产权统计,麻瓜编程还可以注册以下商标分类:
第1类(化学制剂、肥料)
第2类(颜料油漆、染料、防腐制品)
第3类(日化用品、洗护、香料)
第4类(能源、燃料、油脂)
第5类(药品、卫生用品、营养品)
第6类(金属制品、金属建材、金属材料)
第7类(机械设备、马达、传动)
第8类(手动器具(小型)、餐具、冷兵器)
第10类(医疗器械、医疗用品、成人用品)
第11类(照明洁具、冷热设备、消毒净化)
第12类(运输工具、运载工具零部件)
第13类(军火、烟火、个人防护喷雾)
第14类(珠宝、贵金属、钟表)
第15类(乐器、乐器辅助用品及配件)
第16类(纸品、办公用品、文具教具)
第17类(橡胶制品、绝缘隔热隔音材料)
第18类(箱包、皮革皮具、伞具)
第19类(非金属建筑材料)
第20类(家具、家具部件、软垫)
第21类(厨房器具、家用器皿、洗护用具)
第22类(绳缆、遮蓬、袋子)
第23类(纱、线、丝)
第24类(纺织品、床上用品、毛巾)
第25类(服装、鞋帽、袜子手套)
第26类(饰品、假发、纽扣拉链)
第27类(地毯、席垫、墙纸)
第28类(玩具、体育健身器材、钓具)
第29类(熟食、肉蛋奶、食用油)
第30类(面点、调味品、饮品)
第31类(生鲜、动植物、饲料种子)
第32类(啤酒、不含酒精的饮料)
第33类(酒、含酒精饮料)
第34类(烟草、烟具)
第35类(广告、商业管理、市场营销)
第36类(金融事务、不动产管理、典当担保)
第37类(建筑、室内装修、维修维护)
第38类(电信、通讯服务)
第39类(运输仓储、能源分配、旅行服务)
第40类(材料加工、印刷、污物处理)
第43类(餐饮住宿、养老托儿、动物食宿)
第44类(医疗、美容、园艺)
第45类(安保法律、婚礼家政、社会服务)
H. python web 麻瓜编程怎么样
一般般,正正规规的教程而已
模块 · Python 关键基础知识
1用编程语言和计算机沟通
为什么学习编程会从入门到放弃?并不是学编程这件事特别难,而是很多新手没有掌握用编程语言和计算机沟通的方式,从而走向了误区。如果你能在学编程之前就了解编程语言和人类语言的不同,这会帮你更快的转化思维方式。
2数据与变量——编程的原料
我们可以把程序看成是数据的“加工厂”,加工数据,生产数据, 呈现数据。在开始使用数据之前,我们先来搞清楚数据的类型和使用规则。
3循环——批量处理数据
我在初学编程的时候,看到的教程里的 for 的例子都是生成一些数字,导致我不知道 for 怎么去应用,过了很长一段时间才恍然大悟。所以在这里,我整理了4种 for 的实际应用场景,帮你更好的理解。
4条件判断——处理不确定情况
如果 1 < 2 这样的例子是没有意义的,因为1一定小于2,条件判断的精髓在于处理不确定的情况,而这种不确定往往来自于用户输入。我们要学着预测程序可能发生的不同情况,针对每种情况制定对应的解决方案。
5函数——帮你做事情
就像写作可以分为三段论一样,函数也有自己的运用方法,让每个函数去做一件事情。我觉得在函数的教授中很少有人提及的是,如何去形成编程思路,也就是面对一个实际问题要怎么去解决它。这节课里综合了前面的语法知识,用一个爬虫的案例来帮你理解函数。
6容器——归纳数据
在生活中我们会用不同的容器去归纳不同的物品,在编程中同样需要用不同的容器去装载不同的数据。这节课通过4种常用容器的特点和用途,去掌握容器在实际开发中的使用场景。
I. android编程一个页面东西太多实现向下滑
请参考下
http://android.tgbus.com/Android/tutorial/201107/360548.shtml
这是个滑动控件 记得把你要滑动的内容包裹成一个view 然后放在这儿控件下面就行了