坚决不用python这种垃圾(java难学吗 大概要学多久)
- 数据库
- 2023-08-13
- 325
大家好,坚决不用python这种垃圾相信很多的网友都不是很明白,包括java难学吗 大概要学多久也是一样,不过没有关系,接下来就来为大家分享关于坚决不用python这种...
大家好,坚决不用python这种垃圾相信很多的网友都不是很明白,包括java难学吗 大概要学多久也是一样,不过没有关系,接下来就来为大家分享关于坚决不用python这种垃圾和java难学吗 大概要学多久的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
可以用Python编程语言做哪些神奇好玩的事情
Python作为一种应用极为广泛的语言,几乎在任何领域都能派上用场。想做Web有Flask/Django/Tornado;想做分布式有Celery;想做手机App有Kivy;想做数据分析有Pandas;想做可视化有Matplotlib/Seaborn/Plotly/Bokeh;想做机器学习有Tensorflow/PyTorch/MxNet……
夸张一点说,几乎没有什么做不了的东西(笔芯)。小慕今天分享两个可以用Python做的非常好玩的事情,大家都可以试试看~一、面部识别得益于大量前人的工作,如今利用Python做一些简单的计算机视觉工作已经变得非常非常简单了。像人脸识别、面部特征提取之类的工作,就可以直接拿来用,极少需要自己实现繁琐的算法。
DLib就是一个这样的C++库,而同时它也提供了Python接口。
想必大家都有过在办公室遭遇boss探视的经历,而此时此刻你却在毫无自知地逛着淘宝/知乎/豆瓣,场面一度十分尴尬……
那我们就来尝试一下,用Python通过摄像头探测人脸。如果有人进入了摄像头范围,则让Python提出一个通知,告诉你——赶紧把不相关的东西关掉!
整个代码很短,无非几十行,为了能够使用,我们还需要安装一些包和库。这里需要用到的包括OpenCV和DLib。由于dlib需要boost-python,因此还需要安装boost和boost-python。(注意:boost-python默认情况下只编译python2依赖的库,如果使用python3,需要加编译开关;而dlib里是没有探测python版本的,所以可能还需要做一些小hack或者是直接改boost-python库里的文件名)
至于代码,可以简单地放出来:
importcv2importdlibfromsubprocessimportcallfromtimeimporttimeFREQ=5FACE_DETECTOR=dlib.get_frontal_face_detector()#macOS下可以使用AppleScript发送通知defnotify(text,title):cmd=r'displaynotification"%s"withtitle"%s"'%(text,title)call(["osascript","-e",cmd])if__name__=='__main__':#初始化摄像头cap=cv2.VideoCapture(0)#创建绘图窗口#cv2.namedWindow('face')notify_time=0whileTrue:#获取一帧ret,frame=cap.read()#不需要太精细的图片frame=cv2.resize(frame,(320,240))#探测人脸,可能有多个faces=FACE_DETECTOR(frame,1)forfaceinfaces:#提取人脸部分画个方框#fimg=frame[face.top():face.bottom(),face.left():face.right()]#cv2.rectangle(frame,(face.left(),face.top()),(face.right(),face.bottom()),(255,0,0),3)#不超过FREQ秒一次的发提醒iftime()-notify_time>FREQ:notify(u'检测到人脸',u'注意')notify_time=time()#画到窗口里#cv2.imshow('face',frame)#按Q退出ifcv2.waitKey(500)&0xff==ord('q'):break#清理窗口释放摄像头#cv2.destroyAllWindows()cap.release()代码的原理很简单:通过opencv捕获摄像头获取的图像,然后交由dlib的facedetector进行检测。如果检测到脸部,则通过AppleScript发出系统提醒(notify函数即通过process执行AppleScript发出提醒,如果你使用的是Windows,也可以替换成别的内容,例如Win下使用VBScript发出弹窗提醒)。
当然,既然检测到人脸,那就不仅仅只是能做简单提醒了。还可以做的事情包括多张照片的脸部变形合成——比如,找出你和你女朋友的照片来做个夫妻相合成什么的……
或者,提取所有的标志性点,给人脸合成出意外的表情或者哈哈镜效果。
甚至可以借助其它的深度学习网络进行人脸识别。这算是超级弱化版的脸部识别,比不上FaceID但也挺好玩,不过计算量就不容乐观了。
顺便说一句,什么人脸识别关掉不该看的东西,对小慕来说不存在的,人家上班刷知乎可是经过老板点头的!(骄傲脸叉腰)
二、数据分析来分析下Marvel今年的最后一部戏:「雷神3:诸神的黄昏」。前一段时间满天飞的预告片,神秘博士的客串,绿巨人的出演,看得人十分兴奋!来张大图:
大家对于这部电影的评价是怎么样的呢?小慕爬取了2w条豆瓣影评,做一个简单分析。
先来看看豆瓣的短评:
这里只抓取了前2w条评论,说一个小技巧,喜欢写爬虫的小伙伴们注意了:爬取的网页一定要缓存到本地!这可以减少解析网页时出错,避免需要重新再爬一遍的「尴尬」!另外这能给服务器减少负载,人家网站管理员看你的请求还算守规矩,也就不会封你账号/ip啦!
代码大概是这样的:
下面是缓存下来的网页文件:
既然有2w多条数据,怎么能直接写sql,那会累死的……于是要来封装一下操作数据库的逻辑:
来看看效果,除去部分出错的,还剩下19672条:
具体的数据是长这样的:
另外,赞同数量排名第一卷耳君的影评实在是太有意思了:
第一部:《爸爸,再爱我一次》
第二部:《哥哥,再爱我一次》
第三部:《姐姐,再爱我一次》
ps:托尔终于从锤神变成了雷神
锤子之神这个梗小慕表示能玩一年(手动微笑脸)。
光有数据还不足以说明什么,深入分析一波:细心的小伙伴一定发现了,雷神明明是11月3号才上映,为啥10月份就有影评了?小慕猜测,这肯定是漫威铁杆粉跑国外看了,一查发现,果然人家洛杉矶10月10号就上映了:
既然关心到日期,可以来统计一下周一到周日哪天去看电影的人比较多:
整体数据显示:果然还是周末去看电影的人更多……周一数据高于二、三、四的原因,不知道是不是没有周末的朋友调休去看的?
PS:数据库里的日期是2017-10-25格式的:怎么快速让他显示成周X呢?这里只要写个小函数就行:
从数据库里读数据和统计的方式在这:(后面的统计方式也都类似,就不每次都把代码放出来啦)
说了这么多还是没提到电影的受欢迎程度,直接放图:
总体上看还是推荐的人比较多耶,这应该挺符合大家的预期,毕竟是漫威出品,光忠实粉丝就不计其数。更何况这个片子里出现了很多超级火爆的场面戏,还有各种超级英雄助阵,这样的统计结果也就不足为奇了。
最后将排名前100的评论内容做了一下分词,做成词云:
至于补充提问中提到的这为什么适合用Python做,其实说到底就是用Python来抓取和处理各种数据都非常「顺手」。
据小慕所知,目前的数据工作中,数据科学家使用最多的工具语言就是Python,排在第二的工具语言是R语言。但这里有一个有趣的现象,那就是同时使用Python或者R语言的人,推荐别人使用Python的却远高于R语言。Why?
答案是:1.Python简单易学,极其容易上手,语法简单,处理速度会比R语言要快,而且无需把数据库切割。
2.市场前景好,是目前的趋势,就业也会更容易。
3.标准库非常庞大,特别的“功能齐全”,可以处理各种工作,其中就包含抓取和处理数据。
所以,有一种说法是:python语言在工程方便比较实用,R语言则更受学术界欢迎。具体是否赞同这种说法,还要看大家自己的理解咯~其实除了小慕举例说的这两种有趣的事情,Python能做的还有很多,在此不一一列举,如果感觉get到了新姿势,记得回来点赞啦~
程序员学习交流请添加慕课网官方客服微信:mukewang666回复暗号“前端面试”可进前端交流群回复暗号“Java”可进Java交流群回复暗号“专栏”可进程序员交流群Python在大部分领域都能胜任,为什么很多企业转向了Golang
python是一个很灵活的语言,但是里面一切皆变量,带来了很大的不确定性,如果不是高手,很容易造成生产级的事故。而go,首先作为编译型需要,运行速度远超python,同时容器的爆火也推进了go的发展,使越来越多的公司倾向了go,而且在很多系统的衔接处,通过go可以提高性能,也使很多公司转向了go。但总的来说,语言要看场景,不能一概而论。
Python和c语言有什么区别
区别:
1、语言类型不同:c++属于静态;Python属于动态。
2、运行效率不同:c++的运行效率要比Python快。
3、学习难度不同:c++更加复杂;Python更容易上手。
4、编程执行方式不同:c++需要经过编译才能运行;Python不需要经过编译。
5、函数库的使用方法不同:c++引用头文件需要告知预处理器这个文件的内容;Python可以使用函数直接引用。
C语言和Python的区别
1、语言类型
Python是一种基于解释器的,面向对象的解释型语言。解释器会逐行读取代码;首先将Python编译为字节码,然后由大型C程序解释。
C是一种面向过程的编译型语言,完整的源代码将直接编译为机器代码,由CPU直接执行。
2、内存管理
Python使用自动垃圾收集器进行内存管理。
在C语言中,程序员必须自己进行内存管理。
3、语法结构
Python中通过缩进来表示语句体,在Python中每一条语句结尾后没有分号。
C语言通过{}来表示语句体,在C语言中每一条语句结尾后都需要由英文分号结尾。分号是C语言中唯一的语句结束标志。
4、速度
Python编程语言很慢;而,C语言很快。
5、应用
Python是一种通用编程语言,一个多范式。它主要支持面向对象编程,程序编程,函数编程。
C是结构化编程语言。允许使用函数,选择(if/else等),迭代(循环)。它最主要的用途就是系统底层的应用,例:硬件相关的应用程序。
为什么感觉铺天盖地都是Python的广告
很高兴收到你的邀请
Python的火爆程度,本人觉得主要跟下面几点有关系:
一是Python确实是顺应了信息技术发展的潮流,在当前5G、人工智能、大数据等领域,都能轻易应对。
二是它是一个开源的开发软件,在当前技术被政治化的胁迫下,越来越多的人认识到有版权的软件的不可靠性,更依赖于掌握一门开源的开发软件。
三是多人想学习Python,所以就有很多培训Python的专业公司或个人,所以,网上大把的Python学习广告,一是揽客,二是反映了培训竞争的激烈,三是说明Python是今后最主要的开发语言。
无论如何,能掌握多一门开发语言,对于从事信息技术的人来说,都是一个很不错的选择。
c语言、c++ 、c# 、java python,有什么区别
cc++c#javapython只是不同的计算机编程语言,就像中文英语日语德语意大利语一样。但他们有显著的不同。
c语言是面向过程和函数的编程语言c语言是一门古老的语言,主要是面向过程编程,也实现了函数式编程。与另外几个语言相比,显著的优点就是速度快。
c++是c的超集c++完全兼容c,是面向过程、面向对象、函数式编程以及模板语言等。速度相对c慢点。
c#和java是面向对象的语言与c和c++相比,c#和java是完全面向对象的语言。而且具有内存管理功能。
python是脚本语言python是脚本语言,执行期间动态编译。其他语言都是编译型语言,语言先编译再执行。因此,python具有较好的交互性。
文章到此结束,如果本次分享的坚决不用python这种垃圾和java难学吗 大概要学多久的问题解决了您的问题,那么我们由衷的感到高兴!
本文链接:http://www.xinin56.com/su/473.html