大家都用 Python 来做什么啊?
发现很多人都在学习 Python ,但是没有明确的说明可以做什么,主流的功能是什么?想知道目前利用 Python 开发的都在干什么?
1楼(未知网友)
机器学习相关,用来代替matlab
2楼(未知网友)
爬虫爬小黄图。
项目进行中,有兴趣的跟踪我的专栏。
妈呀,卡住啦。
要弃坑啦。
3楼(未知网友)
web开发,科学计算,爬虫,数据挖掘。
4楼(未知网友)
# 负能量预警,这是一个悲伤的故事。
用Python 可以撩妹。
前段时间撩一个妹子,吃饭期间聊起来,妹子正在找暑假的实习,问我有没有公司推荐。我说,『你想去什么样的公司呀?』,妹子说,『听说最近搞投资的机构好多待遇又好,你知不知道呀?』。开玩笑,我好歹也算VC圈里打过滚的人,当场拍着胸脯向妹子保证,『交给我吧!回头发你一份投资机构的名单!』
然而回去之后一合计,手机里的联系人统共加起来没几个,这要怎么向妹子交代?幸好我已经不是曾经那个花了5个小时手动下载几百张PPT 素材图片的『分析师』了,什么Requests, BeautifulSoup, lxml, NumPy, Pandas, 哪个我没有见过?说干就干,我找了一个收录了比较齐全的投资机构的网站,哼哧哼哧码起代码来。
一眨眼好几个小时过去了,在被Unicode 编码折磨了一百零一遍之后,我总算捯饬出了一份投资机构名单。
这是一份非常非常简陋的名单,因为我懒得再往里面添东西,毕竟妹子的原话是『在杭州有哪些投资机构啊?』,喏,都在这儿了。
怀着喜悦的心情,我把这份名单发给了妹子。
反应不错嘛!这几个小时没白花!
# 曾经
# 我是一个
# 懵懂的
# 热血青年
# 直到
# 有一天
# 我收到了
# 一张
# 小小的
# 卡片
## 以上是我创作的俳句
过了一段时间,妹子主动来找我了。哼哼,人生苦短,我用Python。你看,这不,轻轻松松撩妹成功。
。
。。
。。。
。。。。
。。。
。。
。
后来我和妹子成为了好朋友,每周都会联系个一次两次,聊上个一句两句。
# 正文已经结束,请观众有序离场。前方高能预警,请系好安全带,文明驾驶。
大概这才是Python 的正确用法吧。(远目
5楼(未知网友)
#做网站后台
Python在网站后台这边有大量的成熟的框架,如django,flask,bottle,tornado,我曾经用过flask和django搭建了的两个网站已经上线
http://zhaduixueshe.com
http://aljun.me
#写网络爬虫
Python写爬虫非常简单,库很健全
以下是我写的一些爬虫教程和心得
http://aljun.me/post/17
http://aljun.me/post/18
#科学计算
Python有三大神器:numpy,scipy,matplotlib,其中numpy很多底层使用C语言实现的,所以速度很快,我曾经用它参加各种数学建模大赛,完全可以替代r语言和MATLAB
以下是我写的科学计算简单教程
http://aljun.me/post/16
#数据挖掘,机器学习
Python的机器学习包很多,或者自己可以试着实现机器学习算法,因为Python的类似伪代码的语法,很容易快速实现自己的想法,另外主流的机器学习算法都有成熟的包,加上谷歌开源的TensorFlow,常用的机器学习包:scikit-learn,pattern,jieba,pybrain等等
#数据科学
最近spark,Hadoop都开了Python的接口,所以使用Python做大数据的mapreduce也非常简单,加上py对数据库支持都很好,或者类似sqlalchemy的orm也非常强大好用
以及剩下的码算法,玩玩树莓派什么的我就不多说了,
py的强大其实在于他能迅速的实现想法
6楼(未知网友)
扩展各种自己生活中的工具呀
手把手教你扩展个人微信号(1) - LittleCoder的文章 - 知乎专栏
使用Python配合Evernote完成每周工作安排 - LittleCoder的文章 - 知乎专栏
零基础二十分钟搭建SAE微信个人号后台 - LittleCoder的文章 - 知乎专栏
7楼(未知网友)
Python 可以做什么,这是一个有趣的问题。
从入门级选手到专业级选手都在做的——爬虫
用 Python 写爬虫的教程网上一抓一大把,据我所知很多初学 Python 的人都是使用它编写爬虫程序。小到抓取一个小黄图网站,大到一个互联网公司的商业应用。通过 Python 入门爬虫比较简单易学,不需要在一开始掌握太多太基础太底层的知识就可以很快上手,而且很快可以做出成果,非常适合小白一开始想做出点看得见的东西的成就感。
除了入门,爬虫也被广泛应用到一些需要数据的公司、平台和组织,通过抓取互联网上的公开数据,来实现一些商业价值是非常常见的做法。当然这些选手的爬虫就要厉害的多了,需要处理包括路由、存储、分布式计算等很多问题,与小白的抓黄图小程序,复杂度差了很多倍。
Web 程序
除了爬虫,Python 也广泛应用到了 Web 端程序,比如你现在正在使用的知乎,主站后台就是基于 Python 的 tornado 框架,豆瓣的后台也是基于 Python。除了 tornado (Tornado Web Server),Python 常用的 Web 框架还有 Flask(Welcome | Flask (A Python Microframework)),Django (The Web framework for perfectionists with deadlines) 等等。通过上述框架,你可以很方便实现一个 Web 程序,比如我认识的一些朋友,就通过 Python 自己编写了自己的博客程序,包括之前的 zhihu.photo,我就是通过 Flask 实现的后台(出于版权等原因,我已经停掉了这个网站)。除了上述框架,你也可以尝试自己实现一个 Web 框架。
桌面程序
Python 也有很多 UI 库,你可以很方便地完成一个 GUI 程序(话说我最开始接触编程的时候,就觉得写 GUI 好炫酷,不过搞了好久才在 VC6 搞出一个小程序,后来又辗转 Delphi、Java等,最后接触到 Python 的时候,我对 GUI 已经不感兴趣了)。Python 实现 GUI 的实例也不少,包括大名鼎鼎的 Dropbox,就是 Python 实现的服务器端和客户端程序。
科学计算
Python 的开发效率很高,性能要求较高的模块可以用 C 改写,Python 调用。同时,Python 可以更高层次的抽象问题,所以在科学计算领域也非常热门。包括 scipy、numpy 等用于科学计算的第三方库的出现,更是方便了又一定数学基础,但是计算机基础一般的朋友。
图像处理
这方面不熟,列几个关键词吧,如有错误,请斧正。
keywords : OpenCV, Pillow, PIL
小结
时间问题,暂到这里。基本上可以不负责任地认为,Python 可以做任何事情。
但是,如果你是打算以此为业,我的建议是,不要局限在 「学Python」这样的思维上。要在技术领域立足,仅仅学会了 Python 的语法是不够的,你需要很多编程语言之外的基础知识。
8楼(未知网友)
首先上一首Python之禅:
Python是一个非常好用的程序语言,开发的速度非常快。我用Python已经一年多了,从Python2.7到现在的Python3.4,也写了好多的小程序,其中大部分都是爬虫程序,下面简单列举几个,可怜了我科的各种系统。
0. 制作引文分析利器HistCite的便捷使用版本
怎么又出现了一个序号为零的啊!没错,这个又是我后来加上的,嘻嘻~
对于整天和文献打交道的研究生来说,HistCite是一款不可多得的效率利器,它可以快速绘制出某个研究领域的发展脉络,快速锁定某个研究方向的重要文献和学术大牛,还可以找到某些具有开创性成果的无指定关键词的论文。但是原生的HistCite已经有4年没有更新了,现在使用会出现各种bug,于是我就用Python基于HistCite内核开发了一个方便使用的免安装版本。具体的使用方法和下载链接见我的第一篇知乎专栏文章:文献引文分析利器HistCite使用教程(附精简易用免安装Pro版本下载) - Tsing的文章 - 知乎专栏
1. 破解观看中科大网络课堂
中国科学技术大学网络课堂(http://wlkt.ustc.edu.cn/)是一个非常好的平台,上面汇集了很多知名教授的授课视频,以及最新的讲座、报告、表演视频,内容还是相当丰富的。但是这些视频只面向校内IP开放。
所以想在校外看到这些视频必须破解视频地址,于是利用Python的requests库结合BeautifulSoup,用了不到10行代码就可以获取真实下载地址。
为了方便没有安装Python的电脑使用,简单写了一个GUI界面,给室友用,都说还是挺好的用的哈。
考虑到视频版权问题,代码和程序就不放出来了,请大家见谅。
2. 获取中科大研究生系统全部学生姓名、学号、选课信息
登录中国科学技术大学的研究生综合系统(中国科学技术大学研究生信息平台),可以看到每一门课选课的学生姓名和学号,当时就想能不能做一个这样的系统,来输入任何姓名(或者学号)就可以看到他所有的选课信息呢?这是选课首页:
点击每门课的已选人数链接,可以看到所有的选课学生姓名和学号:
下面就利用requests的模拟登录功能,先获取全部课程的链接,并保存对于的课程信息,然后挨个获取了所有课程的选课信息。为了保护学生信息,对程序的关键部分进行了模糊处理,希望大家谅解。
这样就获取了一个巨大的json文件,里面全部是学生姓名学号选课信息:
有了这个json文件,我们可以写入数据库,也可以直接利用json文件来查询:
为了方便其他人使用,基于上面的数据我开发了一个线上版本:
输入姓名或者学号都可以直接查询别人的选课信息:
这个地址就不放出来了,如果您是科大的研究生,私信我,我把链接发给你。
3. 扫描中科大研究生系统上的弱密码用户
基于上面获得的选课学生学号,很容易利用Python依次模拟登录研究生,密码就用弱密码123456,然后可以获得身份证号码等重要信息。
这样就得到了使用123456作为密码的用户信息,所以在此提醒大家一定不要使用弱密码,希望下面的同学早日修改密码。
4. 模拟登录中科大图书馆并自动续借
最近,科大图书馆系统升级了,到处都加了验证码,所以下面这个方法直接使用肯定是不行了,不过曾经毕竟成功过哈。以前收到借阅图书到期通知短信,就会运行一下这个程序,自动续借了,然后就可以再看一个月了。
运行就是这样的,自动续借成功,看到的链接就是每本书的续借链接。
5. 网易云音乐批量下载
终于来一个正常一点的哈,那么我就直接放代码吧,可以下载网易云音乐各个榜单的全部歌曲,批量下载,速度挺快。请注意提前要创建一个名为 “网易云音乐” 的文件夹。
# 网易云音乐批量下载
# By Tsing
# Python3.4.4
import requests
import urllib
# 榜单歌曲批量下载
# r = requests.get('http://music.163.com/api/playlist/detail?id=2884035') # 网易原创歌曲榜
# r = requests.get('http://music.163.com/api/playlist/detail?id=19723756') # 云音乐飙升榜
# r = requests.get('http://music.163.com/api/playlist/detail?id=3778678') # 云音乐热歌榜
r = requests.get('http://music.163.com/api/playlist/detail?id=3779629') # 云音乐新歌榜
# 歌单歌曲批量下载
# r = requests.get('http://music.163.com/api/playlist/detail?id=123415635') # 云音乐歌单——【华语】中国风的韵律,中国人的印记
# r = requests.get('http://music.163.com/api/playlist/detail?id=122732380') # 云音乐歌单——那不是爱,只是寂寞说的谎
arr = r.json()['result']['tracks'] # 共有100首歌
for i in range(10): # 输入要下载音乐的数量,1到100。
name = str(i+1) + ' ' + arr[i]['name'] + '.mp3'
link = arr[i]['mp3Url']
urllib.request.urlretrieve(link, '网易云音乐\\' + name) # 提前要创建文件夹
print(name + ' 下载完成')