老夏学院

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5960|回复: 3

第1章 Python简介

[复制链接]

304

主题

847

帖子

1082

G币

院长

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
1082

院长资深讲师

QQ
发表于 2023-7-10 10:30:23 | 显示全部楼层 |阅读模式
    1.1 Python历史   

    1989年圣诞节期间,荷兰人吉多•范•罗苏姆(Guido van Rossum)在阿姆斯特丹为了打发圣诞节的无聊时间,决心开发一个新的脚本解释程序,以作为ABC语言的一种继承,这就是Python。
    之所以取名为Python作为该编程语言的名字,是因为吉多•范•罗苏姆喜欢看英国20世纪70年代首播的电视喜剧《蒙提•派森的飞行马戏团》(Monty Python’s Flying Circus),于是他将这种新的编程语言起名为Python(大蟒蛇的意思)。
Python的logo.png
图1-1 Python的logo
    1991年第一个Python解释器公开版发布,它是用C语言编写实现的,并能够调用C语言的库文件,且Python一诞生就已经具有了类、函数和异常处理等内容,包含字典、列表等核心数据结构。
    2000年Python 2发布,经过数年的发展,其维护者兼发布经理本杰明•彼得森(Benjamin Peterson)于2020年4月20日23点06分在邮件组中正式声明,Python 2.7.18正式发布,并且这将是Python 2的最后一个版本。
    2008年12月3日Python 3正式发布,需要注意的是Python 3与Python 2是不完全兼容的。但是由于很多Python程序和库都是基于Python 2开发的,所以Python 2和Python 3的程序仍然会在较长的一段时期内并存。不过,由于Python 3的新功能吸引了很多开发人员,所以很多开发人员正在从Python 2升级到Python 3。作为初学者,如果想学习Python,强烈建议从Python 3开始。

304

主题

847

帖子

1082

G币

院长

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
1082

院长资深讲师

QQ
 楼主| 发表于 2023-7-10 10:36:20 | 显示全部楼层
      1.2 Python设计哲学

    Beautiful is better than ugly.(优雅胜于丑陋)
    Explicit is better than implicit.(明确胜于含糊)
    Simple is better than complex.(简单胜于复杂)
    Complex is better than complicated.(复杂胜于繁琐)
    Flat is better than nested.(扁平胜于嵌套)
    Sparse is better than dense.(间隔胜于紧凑)
    Readability counts.(可读性很重要)
    Special cases aren’t special enough to break the rules.(即使假借特殊之名,也不应打破这些原则)
    Although practicality beats purity.(尽管实践大于理论)
    Errors should never pass silently.(错误不可置之不理)
    Unless explicitly silenced.(除非另有明确要求)
    In the face of ambiguity, refuse the temptation to guess.(面对模棱两可,拒绝猜测)
    There should be one – and preferably only one – obvious way to do it.(用一种方法,最好是只有一种方法来做一件事)
    Although that way may not be obvious at first unless you’re Dutch.(虽然这种方式开始时并不容易,除非你是Python之父)
    Now is better than never.(从现在开始这么做,总比永远都不做好)
    Although never is often better than right now.(但不假思索就动手还不如不做)
    If the implementation is hard to explain, it’s a bad idea.(如果一个方案不容易解释,那么它肯定是个坏主意)
    If the implementation is easy to explain, it may be a good idea.(如果一个方案很容易解释,那么它可能是个好主意)
    Namespaces are one honking great idea – let’s do more of those!(命名空间就是一个绝妙的想法,应当多加利用)

304

主题

847

帖子

1082

G币

院长

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
1082

院长资深讲师

QQ
 楼主| 发表于 2023-7-10 10:39:27 | 显示全部楼层
      1.3 Python特点

    1.免费开源
    Python是FLOSS(自由/开放源码软件)之一,允许自由发布软件的备份、阅读和修改其源代码,并可以将其一部分自由地用于新的自由软件中。
    2.简单易学
    Python遵循“简单、优雅、明确”的设计哲学,并且拥有相对较少的关键字和一个明确定义的语法,使得读者学习起来更加简单。
    3.高级语言
    Python是一种高级语言,相对于C语言,牺牲了性能而提升了编程人员的效率,使得编程人员可以不用关注底层的细节,从而把精力全部放在编程上。
    4.解释执行
    Python是解释型语言,边编译边执行。
    5.可移值性
    基于其开放源代码的特性,Python能运行在不同的平台上。
    6.面向对象
    Python既支持面向过程,也支持面向对象。
    7.可嵌入性
    Python可以嵌入到C/C++中,从而让程序的用户获得“脚本化”的能力。
    8.可扩展性
    可以通过使用C/C++语言为Python编写扩展模块。
    9.丰富的库
    Python拥有许多功能丰富和可跨平台的库,并且在不同的平台上其兼容性良好。

304

主题

847

帖子

1082

G币

院长

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
1082

院长资深讲师

QQ
 楼主| 发表于 2023-7-10 10:44:37 | 显示全部楼层
    1.4 Pyhton应用场景

    1.Web开发
    Python语言能够满足快速迭代的需求,这点特性非常适合互联网公司的Web开发应用场景。Python用作Web开发已有十多年的历史,在这个过程中,涌现出了众多优秀的Web开发框架,如Django、Pyramid、Bottle、Tornado、Flask和web2py等,并且许多知名的网站也在使用Python语言开发,如豆瓣、知乎、网易、YouTube和Yelp等。这一方面足以说明Python作为Web开发的受欢迎程度,另一方面也说明Python语言用作Web开发经受住了大规模用户并发访问的考验。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——Web编程》一书进行学习。
    2.GUI开发
    Python语言可以轻松地开发出一套GUI应用程序。Python的GUI开发不仅可以使用Python的标准库Tkinter模块进行编程,还可以使用PyGObject、PyQt、PySide、Kivy或wxPython等第三方库进行编程。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——高阶编程》一书进行学习。
    3.游戏开发
    与Web开发和GUI开发一样,Python同样具有用于游戏开发的大量工具和库。Python可以直接调用Open GL实现3D绘制,这是高性能游戏引擎的技术基础。此外,Python还提供了众多2D和3D游戏的库,包括:Pygame、Pyglet、Cocos2d、Pycap、Construct、Panda3D、PySoy和PyOpenGL等。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——高阶编程》一书进行学习。
    4.网络爬虫
    互联网拥有海量的免费数据信息,而网络爬虫就是从不同的网站上爬取数据信息,并利用这些数据信息解决一系列诸如金融风险分析、社交媒体情绪分析和机器学习项目等相关问题。Python提供了众多用于构建网络爬虫的库,包括:urllib、requests、BeautifulSoup、PyQuery和Selenium等。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——数据分析》一书进行学习。
    5.科学计算
    Python语言也广泛地应用于科学计算,其中,NumPy、SciPy和Pandas就是优秀的数值计算和科学计算库。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——数据分析》一书进行学习。
    6.数据可视化
    Python语言也可以将复杂的数据通过图表展示出来,以便于数据分析。常用的数据可视化库,包括:Matplotlib、Seaborn和Pyecharts等。该应用场景的具体内容,读者可以通过阅读《Python全栈开发——数据分析》一书进行学习。
    7.人工智能
    人工智能是当下非常火爆的技术领域之一。Python语言可以广泛应用于深度学习、机器学习和自然语言处理等技术领域。且由于Python语言的动态特点,很多人工智能框架都是采用Python语言实现的。
    8.大数据
    大数据分析中涉及到的分布式计算、数据可视化、数据库操作等,在Python中都有成熟的库可以完成,且Hadoop和Spark都可以直接使用Python编写计算逻辑。
    9.自动化运维
    Python语言可以编写服务器运维自动化脚本。服务器多数采用Linux和UNIX系统,以前很多运维人员通过编写系统管理Shell脚本来实现运维工作,而现在则可以使用Python语言编写系统管理,在代码可读性、重用性和可扩展性等方面都优于普通的Shell脚本。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|老夏学院 ( 辽ICP备19020546号-1 )

GMT+8, 2024-5-18 12:29 , Processed in 1.081962 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020.

快速回复 返回顶部 返回列表