人生苦短,我用python。

python是什么?

Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

python语言有以下特点:

  • 易于学习。Python有相对较少的关键字,结构简单,还有极其简单的语法,所以特别容易上手。
  • 简洁,高效。这意味着执行同一个任务,python的几行代码就可以完成其他编程语言十几行才能完成的事情。我们用python和C++做一个对比,如下:

Python:

 #!/usr/bin/python
a = 0
while(a <= 10):
a = a + 1
print 'The number is '+a
print 'while is end'

C++:

 #include <iostream>
int main()
{
int a = ;
while( a <= )
{
a = a + ;
cout<<"The number is "<<a<<endl;
}
cout<<"while is end"<<endl;
}
  • 丰富的标准库和第三方库。Python的最大的优势之一是跨平台的丰富的库,在UNIX,Windows和Macintosh兼容都很好。
  • 面向对象。python是面向对象的编程语言,python支持面向对象的风格或代码封装在对象的编程技术。python有很多第三方库,如Numby,Pandas都可直接调用。
  • 跨平台,可移植性。基于其开放源代码的特性,Python已经被移植到许多平台,可以在很多系统下运行,例如Windows、Linux、FreeBSD、Macintosh…等等。
  • 功能强大。python从网络爬虫、数据分析与计算、数据可视化到web开发、人工智能、自动化测试运维等都可以做。

python可以做什么?

一、Web开发

提起python,大多数人的第一反应是网络爬虫,使用python可以快速爬取网站信息。但作为一门编程语言,Web开发才是最基本的功能。Django和Flask是最流行的两种python Web框架,当然其他的还有Bottle、Pylons等等。你可以使用这些Web框架来编写你的服务器端代码。由于Python是一种解释型的脚本语言,开发效率比较高,运行速度也很快,所以非常适合用来做Web开发,比如豆瓣网,知乎,YouTube,Google等知名网站都使用了python。从事该领域应从数据、组件、安全等多领域进行学习,从底层了解其工作原理并可驾驭任何业内主流的Web框架。

二、网络爬虫

在爬虫领域,Python几乎是霸主地位。虽然其他语言也可以做网络爬虫,但由于python语言的特性,数据爬取比其它语言代码更简洁,效率更高。你可以使用python将网络一切数据作为资源,通过自动化程序进行有针对性的数据采集。从事该领域应学习爬虫策略、高性能异步IO、分布式爬虫等,并针对Scrapy框架源码进行深入剖析,从而理解其原理并实现自定义爬虫框架。

三、数据分析和数据可视化

当爬虫爬取到足够多的数据后,数据分析就成为必不可少的工作。在大量数据的基础上,结合科学计算、机器学习等技术,对数据进行清洗、去重、规格化和针对性的分析是大数据行业的基石,而Python正是数据分析的主流语言之一。同时,利用python中的matplotlib和seaborn这两个绘图和统计库(还有很多其他的绘图库),可以让我们很轻松的将数据可视化。

四、机器学习与人工智能

无论是在传统机器学习还是深度学习领域Python都占有不可替代的地位。许多诸如Scikit-learn、Tensorflow等机器学习和深度学习库使得Python极具优势。而机器学习,深度学习正是人工智能的基石。

除以上主流领域之外,python在网络编程、云计算开发、自动化运维、游戏开发等领域都有不俗的表现。

更多内容可访问我的个人博客:http://www.yunc.top/

python是什么?python能做什么?的更多相关文章

  1. Python 之 使用 PIL 库做图像处理

    http://www.cnblogs.com/way_testlife/archive/2011/04/17/2019013.html Python 之 使用 PIL 库做图像处理 1. 简介. 图像 ...

  2. Python之路,Day17 - 分分钟做个BBS论坛

    Python之路,Day17 - 分分钟做个BBS论坛   本节内容: 项目:开发一个简单的BBS论坛 需求: 整体参考"抽屉新热榜" + "虎嗅网" 实现不同 ...

  3. [转]Python 之 使用 PIL 库做图像处理

    Python 之 使用 PIL 库做图像处理 1. 简介. 图像处理是一门应用非常广的技术,而拥有非常丰富第三方扩展库的 Python 当然不会错过这一门盛宴.PIL (Python Imaging ...

  4. Python中实现对list做减法操作介绍

    Python中实现对list做减法操作介绍 这篇文章主要介绍了Python中实现对list做减法操作介绍,需要的朋友可以参考下 问题描述:假设我有这样两个list, 一个是list1,list1 = ...

  5. 【Python大系】Python快速教程

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...

  6. 【循序渐进学Python】12.Python 正则表达式简介

    正表达式就是一段匹配文本片段的模式,在Python 中 re 模块包含了对正则表达式(regular expression)的支持. 1. 正则表达式的基本概念 1. 通配符 点号( . )可以匹配换 ...

  7. Python补充02 Python小技巧

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在这里列举一些我使用Python时积累的小技巧.这些技巧是我在使用Python过程 ...

  8. 【和我一起学python吧】python的一些推荐

    看到未名的几篇帖子 使我想起了和python的一些经历,于是写了一篇咚咚. 1 书籍: python的syntax足够简单,semantics也不复杂,不怎么会使人混乱,一般来说看自带的文档足够可以学 ...

  9. 【和我一起学python吧】Python安装、配置图文详解

     Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...

  10. 【和我一起学python吧】python入门语法总结

    1.python是一个解释性语言: 一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1).这个过程通过编译器和不同的标记.选项完 ...

随机推荐

  1. python基础知识第三篇(列表)

    列表 list 类 中提供的方法 li=[1,5,dhud,dd,] 通过list类创建的对象 中括号括起来 逗号分隔每个元素 列表中的元素可以是数字,字符串,也可以是列表,也可以是布尔值 所有的都能 ...

  2. 初学Swoole:PHP7安装Swoole的步骤

    本篇文章给大家带来的内容是关于初学Swoole:PHP7安装Swoole的步骤,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 环境 这里不在使用apache做为web server. ...

  3. minicom配置1500000波特率

    背景 项目需求,得用1500000波特率进行,即1.5M的波特率进行串口通信. 最开始以为minicom不支持,因为第一眼在配置界面的选项中没看见.后来发现其实是支持的 方式一 启动时带参数 -b 1 ...

  4. 955 不加班的公司名单:955.WLB

    前两天说到,韩老师的 Github 总 star 数量超过了 20000!全球排名第 232! 他,TypeScript GitHub Star 上海第一,全国第四!GitHub 总标星超两万! 其实 ...

  5. 现代前端库开发指南系列(二):使用 webpack 构建一个库

    前言 在前文中,我说过本系列文章的受众是在现代前端体系下能够熟练编写业务代码的同学,因此本文在介绍 webpack 配置时,仅提及构建一个库所特有的配置,其余配置请参考 webpack 官方文档. 输 ...

  6. 关于MySQL注入漏洞到获取webshell

    关于PHP网站报错性注入拿shell的方法,定位到报错在某个字段上的利用方式: 条件1: 爆出了网站的物理路径 条件2:MySQL具有into outfile权限 SQL语句为: 假如字段为2: un ...

  7. 更改Android设备System目录的文件的写入权限

    有时候我们需要修改/system目录中文件的权限,比如将该目录下的脚本设置写入权限等,但该目录默认只有read权限,此时应该怎么办? 1.安卓设备请确保root;2.连接安卓设备,确保安卓设备打开了“ ...

  8. Maven——向Maven本地仓库中手动添加依赖包(ps:ojdbc.jar)

    maven中央仓库中并非包含所有现有的依赖包和插件,部分依赖包和插件需要手动地进行添加(如ojdbc.jar) 一.添加JDK系统环境变量(maven是基于Java的,可参考:https://www. ...

  9. EVERSPIN非易失性存储器具吸引力嵌入式技术

    相关研究指出,如果以嵌入式MRAM取代微控制器中的eFlash和SRAM,可节省高达90%的功耗:如果采用单一晶体管MRAM取代六个晶体管SRAM,则可实现更高的位元密度和更小的芯片尺寸,这些功率与面 ...

  10. 使用shell脚本删除30天以前的文件

    #!/bin/bashlocation=/root/rmfind $location -mtime +30 -print | xargs rm -rf //-mtime是距离上一次修改时间 -prin ...