目录

python可以做什么

python可以做:1、Web应用开发;2、数据分析与挖掘;3、网络爬虫;4、数据库编程;5、嵌入式应用开发;6、网络安全应用开发;7、桌面应用开发等。Web应用开发是指结合python、html、css、javascript、数据库等开发一个网站。

1、Web应用开发

如果你对网站前端设计比较在行,你可以在极短的时间内搭建一个自己喜欢的网站。当然,前提是要熟练掌握一种Web应用框架。典型的Web应用开发框架有Django、Flask、Pyramid,可以选择自己感兴趣的学习,这里首推Django,随着这些框架的不断更新,使得Python开发网络应用程序变得简单、高效。

2、数据分析与挖掘

如果你熟悉numpy、pandas、matplotlib等数据处理相关的第三方库,不仅可以用Python进行简单的数据处理,小到一个文本中字符替换,大到数据库中数据清洗,使用Python来处理这些数据根本不在话下(前提是要先熟悉Python)。如果你是高手,可以利用Python进行K线图分析、金融数据分析模型搭建、衍生品估值等。

3、网络爬虫

网络爬虫又称网络蜘蛛,是指按照某种规则在网络上爬取所需内容的脚本程序。众所周知,每个网页通常包含其他网页的入口,网络爬虫则通过一个网址依次进入其他网址获取所需内容。在爬虫领域,Python是必不可少的一部分。将网络一切数据作为资源,通过自动化程序进行有针对性的数据采集以及处理。

4、数据库编程

程序员可通过遵循Python DB-API(应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。

5、嵌入式应用开发

Python强大之处在于它是解释性语言,并且是跨平台的,对于当前主流操作系统基本都支持Python开发。如果你是一个硬件“发烧友”,你可以使用Python来监控自家温度、通过网络开门拉窗帘等等,一些智能家电功能可以轻松实现哦(前提是足够了解嵌入式开发)。原理很简单,有个强大的第三方库MicroPython(不止于此),让你可以通过Python脚本语言开发单片机程序,可以实现硬件底层的访问和控制,LED流水灯、LCD显示、电压检测、电机控制、SD卡访问等可以使用Python轻松玩转。

6、网络安全应用开发

以前,网络上流行一句“真正的程序员用C、聪明的程序员用Delphi”。现在这话要改一改了。Python在网络安全应用开发中的地位,不用多讲。在安装Linux应用程序时,抛出缺少的一些关键库,很多是用Python开发的(除了C语言,程序员越来越懒了)。网络安全应用开发很经典的一款Scapy,提供了强大的网络数据包解析功能。使得小白用Python设计的黑客工具不再简单。如果你已经入门了,试着设计一把自己的“瑞士军刀”吧。网络安全

7、桌面应用开发

这点不用多说了,自带的tkinter可以快速开发一款桌面应用。第三方库如PyQt、PySide、PySimpleGUI、Kivy、wxPython等等,任何一款拿过来,都可以开发一款界面美观的GUI应用。轻量一点的gooey库,可以快速将一款命令行下的Python工具(用argparser库搭建的)转化为一个GUI界面程序。

8、自动化运维设计

运维在互联网时代一直具有举足轻重的作用,伴随着云时代、物联网的到来,无论数据还是服务器规模都达到空前的庞大,企业对运维人员的需求由运行维护逐渐转变为研发型运维。Python是运维的标配语言,由于其胶水语言特性,可以利用它将系统中各个工具进行整合,也可以使用它对现有工具进行二次开发,有了这个强大工具,使得产品生命周期变得完整了。

9、游戏开发

对于游戏开发,小白使用Python中的PyGame这样的库,只能实现一些简单的2D游戏,它不是一个完整的游戏引擎库,练手可以,但实现效果不佳。对于3D游戏,推荐一款第三方框架—Panda3D,它是迪士尼开发一款3D游戏引擎库,Panda3D带有完整的3D游戏引擎模块,支持Python和C++,而且,这款模块官方一直在维护。

10、人工智能

Python数据模块特别发大,而人工智能大量用到了python的数学模块。所以在python中集成了大量的人工智能的扩展和模块。用Python可以快速开始人工智能实验。

延伸阅读1:Python是什么

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。