美文网首页人工智能微刊Python语言与信息数据获取和机器学习
人工智能 | 轻松学习Python(一)Python和人工智能的

人工智能 | 轻松学习Python(一)Python和人工智能的

作者: hi_dhl | 来源:发表于2017-12-18 23:08 被阅读5次
    Python和人工智能的渊源

    随着人工智能和大数据的发展,Python也越来越火,2017 年发布的开发语言活跃度排名上,Python 第一次超过了 Java,跃升到第二名,仅次于 JS,如果看过上一篇的朋友,应该有感受到无论是在国内还是在国外,Python的触角已经延伸到了小学、高中、大学,社会各个阶层的人士,随着Python加入计算机等级考试中,现在很多大学无论理科还是文科,都在上这门课程,我会带大家从python基础开始了解人工智能、大数据,中间可能会穿插其他文章,不过所有的文章我都会分类,出一系列教程,即使比较晚关注的读者,也可以循序渐进的进行学习,人生苦短、我们一起来走进Python的世界?

    Python和人工智能的关系

    人工智能(AI:Artificial Intelligence)大概可以分为 通用人工智能(General AI)和狭义人工智能(Narrow AI)

    通用人工智能(General AI):即拥有人类的所有感觉、所有的理智,像人类一样思考的神奇机器。目前科研领域还没有达到能实现通用人工智能的水平。

    狭义人工智能(Narrow AI),指的是能够将特殊任务处理水平与人类一样好,或者更好的技术。譬如图像识别、语音识别、机器翻译等,其准确率已超过人类极限水平。

    Python是一种面向对象、解释型、动态数据类型的高级程序语言,现在Python 成为AI 和大数据时代的第一开发语言,这下有人说了,我用其他语言开发行不行,回答肯定是可以的。例如Matlab、Scala、R、Java等等。

    我们都知道在2016年初,当谷歌DeepMind团队的AlphaGo打败了韩国围棋职业选手李世石时震惊了全世界,AlphaGo大部分程序都是用Python写的,许多大型网站就是用Python开发的例如豆瓣、网易、腾讯、知乎、google以及全球著名的一个视频网站YouTube 等等 也都在用Python

    Python简介

    1、Python的发展史
    (1)1989年由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年
    (2)Granddaddy of Python web frameworks, Zope 1 was released in 1999
    (3)Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.
    (4)Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础
    (5)Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 诞生
    (6)Python 2.5 - September 19, 2006
    (7)Python 2.6 - October 1, 2008
    (8)Python 2.7 - July 3, 2010
    (9)Python 3.0 - December 3, 2008
    (10)Python 3.1 - June 27, 2009
    (11)Python 3.2 - February 20, 2011
    (12)Python 3.3 - September 29, 2012
    (13)Python 3.4 - March 16, 2014
    ……

    如上所示2.7是2x的最后的版本了,也可以说是过渡版本,因为2.7兼容2x和3x,但是官方声明2.7只支持的2020年

    In November 2014, it was announced that Python 2.7 would be supported until 2020, and reaffirmed that there would be no 2.8 release as users were expected to move to Python 3.4+ as soon as possible

    对于2.X和3.X的版本,对于我们到底要选择哪一个版本,官方描述是:

    In summary : Python 2.x is legacy, Python 3.x is the present and future of the language
    个人推荐还是从3.X开始了,不然2020年以后还是要开始学习

    2、Python的优势
    (1)用Python、C 语言和 Java实现同样的逻辑,C 语言和 Java 可能要用比 Python 多数倍甚至几十倍的代码才能完成,Python 简单优雅,尽量写容易看明白的代码,尽量写少的代码。

    (2)C 语言需要程序员自己去释放内存,Java虚拟机有自动回收机制,但是你不知道垃圾回收机制到底干了什么,而Python相对于C 语言和 Java少操心不少事情,Python 提供了非常完善的基础代码库,直接拿来就可以用

    3、Python劣势
    (1)Python语法上自成一派,让很多老手感到不习惯

    (2)Python 的速度很慢,比C 语言大约慢数十倍到数千倍不等,但是由于网络的原因用户需要等待,所以根本感觉不出来,可以忽略

    如何学习Python

    1、看网上视频教程
    现在的网络资源很丰富,在线视频教程也有很多,想要入门Python的话,可以去51CTO学院、CSDN等等,有很多视频教程,当然现在是知识付费的时代,有很多视频教程是收费的,但是也不贵,就当做是支持一下作者吧,毕竟出一个教程非常的不容易,需要去查各种资料,进行总结、实践、以最浅显易懂的方式,让更多的人可以看懂

    2、看W3C Python文档
    W3C是World Wide Web Consortium(万维网联盟)的缩写,像HTML、XHTML、CSS、XML等等的标准就是由W3C来定制。 强烈推荐大家有事没事都可以来这里逛一下,不仅有文档,而且可以在线的进行编译和运行,除了Python还有其他的教程比如js、php、html、css等等,在今后的文章,我会结合W3C和自己的项目经验一起来给大家讲解

    3、看我的文章来入门
    当然也可以通过看我的文章来入门也是完全可以的,“识刻”是一个非常的好的青少年知识分享的平台,关注“识刻”微信公众号,今后我会在“识刻”上发表文章,尽量保证每周出一篇教程

    如何安装Python

    这里我就不花费篇幅去展开介绍安装过程了,网上很多教程,建议大家可以同时安装2.7 和3x,上文也提到了2.7是过渡版本,很多的开源库,还没有移动3x上来,但是2.7只支持到2020年,未来还是用3x, 今后我会主讲3x,顺带可能会穿插2x的语法,供大家去理解

    如果在安装过程中遇到问题,可以留言给我,我会一一给大家解答

    我的第一个Python程序

    1、Python解释器
    当我们从Python官方网站下载并安装好后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

    CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行

    2、运行第一个Python程序
    对于刚开始入门的新手来说,建议大家是用文本编辑器和命令行的方式,可以培养自己的语感,也更加清楚程序的执行过程,文本编辑可以使用Sublime Text或者Notepad++,我常用的是Sublime Text

    这下有人说了Python没有自己的编辑器吗,答案肯定是有的, 常用的就是PyCharm

    说了这么多,终于到了,激动人心的时刻,输出 “left is sort,you use Python”

    1、用文本编辑器添加以下代码,然后保存为后缀为.py的文件,例如hello.py

    #!/usr/bin/env python3 //告诉Python用什么版本执Python
    # -*- coding: utf-8 -*- //这是编码
    
    print("left is sort,you use Python");
    print("人生苦短,我用Python");
    

    2、执行下面命令,运行Python程序

    python3 hello.py
    

    以下是在命令行输出结果

    python3

    今天是开篇的第一篇,希望和大家交朋友,有什么问题、想法都可以留言

    参考源码
    https://github.com/dpm100/python3/blob/master/code/base/hello.py

    相关文章

      网友评论

        本文标题:人工智能 | 轻松学习Python(一)Python和人工智能的

        本文链接:https://www.haomeiwen.com/subject/vpyvwxtx.html