国科大Python编程基础--Chapter01绪论

一、为什么要学习一门算法语言

在这里插入图片描述
• 所有的计算机程序都是使用某种算法语言实现的

二、计算机语言发展过程

在这里插入图片描述

三、Python语言的由来

Python [`paiθən]/[‘paɪθɑn],意为“蟒蛇”。

Python语言的发明者是荷兰人Guido van Rossum(C位大佬)。
在这里插入图片描述

Python 语言的拥有者是Python Software Foundation(PSF),PSF是非盈利组织,致力于保护Python语言开发、开源和发展。

1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为 ABC 语言的一种继承。之所以选Python作为程序的名字,是因为他是一个Monty Python(蟒蛇)的飞行马戏团的爱好者。

  • 2002年,Python 2.x
  • 2008年,Python 3.x

Python语言的版本更迭

  • 更高级别的3.0系列不兼容早期2.0系列;
  • 2008年至今,版本更迭带来大量库函数的升级替换,Python语言的版本更迭痛苦且漫长;
  • 时至今日,Python 3.x系列已经成为主流。

四、Python语言的特点

在这里插入图片描述
官方定义:Python是一种解释型的、面向对象的、带有动态语义的高级程序设计语言

Python设计哲学

  • 美丽优于丑陋
  • 清楚优于含糊
  • 简单优于复杂
  • 复杂优于繁琐
  • 平面比嵌套好
  • 稀疏比稠密好
  • 可读性很重要

在这里插入图片描述

• TIOBE Index for February 2024
TIOBE Index for February 2024

• IEEE Spectrum排行榜(活跃度)
在这里插入图片描述

五、Python适合做什么

在这里插入图片描述

Python应用实例
在这里插入图片描述

六、一些深受欢迎的Python包

Python深受欢迎的原因之一是有大量高品质的库,可帮助完成各种软件任务。

在这些库中,很多都只支持特定的Python版本。具体地说,有些包不支持Python 3.x,因此要使用它们,可能需要使用Python 2.x。但如果熟悉Python 3.x,使用Python 2.x并不难。

PIL:Python图像处理库

• PIL(http://www.pythonware.com/products/pil/index.htm)是一个图像处理库,支持众多图像格式,功能强大,可以对图像做各种处理。如:缩放、裁剪、旋转、滤镜、文字、调色板等等。

Tkinter:Python GUI

• Tkinter是Python库自带的,是访问流行工具包TK GUI的标准方式。如果要使用Python创建图形用户界面(GUI),应首先考虑使用这个包。有关该包的更详细信息,参阅http://docs.python.org/3/library/tkinter.html

Django:交互式网站

• Django(www.djangoproject.com)是一个用于创建交互式网站的框架。

Bottle:交互式网站

• Bottle(http://bottlepy.org/docs/dev/)类似于Django,它也是一个用于创建交互式网站的框架。不同的是,Bottle是一个轻量级的小型框架,更适合用于开发小型网站。

Pygame:2D动画

• Pygame(www.pygame.org)能够创建和控制二维动画,尤其适合开发游戏。它提供了创建动画和声音的工具,还提供了控制游戏杆等输入设备的工具。Pygame网站还提供了初步教程和示例程序。

SciPy:科学计算

• SciPy(www.scipy.org)是一个用于科学计算的大型软件工具库,深受欢迎,还有专门的会议。它提供的数学软件可以完成:求解最优化问题、执行线性代数数字计算、处理信号等。

Twisted:网络编程

• Twisted(http://twistedmatrix.com/trac)是一个深受欢迎的Python网络编程库,支持众多网络协议,可用于开发Web服务器、邮件服务器和聊天客户端/服务器等。

PyPI:Python包索引

• Python包索引(http://pypi.python.org/pypi)是一个更新频繁的清单,列出了数万个用户提交的Python包。如果要寻找专用Python库或了解Python已用于哪些方面,可在此查询。

Request:爬取网页库

• Requests:(http://www.python-requests.org)用于自动爬取HTML页面、自动网络请求提交

BeautifulSoup:解析网页库

• BeautifulSoup(https://www.crummy.com/software/BeautifulSoup/)用于解析HTML页面

Sklearn:机器学习算法库

• Sklearn:( https://pypi.org/project/scikit-learn/)集成了常用的机器学习算法(依赖库:Numpy、Scipy、matplotlib)

tesorflow:人工智能算法库

• tesorflow:( https://pypi.org/project/tensorflow/)是一个基于数据流编程的符号数学系统,被广泛应用于各类机器学习算法的编程实现

七、常用Python IDE

文本工具类IDE集成工具类
NotepadIDLE
Sublime TextPyCharm
Vim & EmacsWing
AtomPyDev &Eclipse
Komodo EditVisual Studio
Jupyter NotebookAnoconda & Spyder
Canopy

本课程中推荐使用:

  1. IDLE (轻量级、集成工具类)
  2. PyCharm(轻量级、集成工具类,Python解释器使用系统已经安装的)
  3. Anaconda(集成工具类,集成了大多数第三方库、Spider编辑器、Ipython console)

1、IDLE

特点:
• Python软件包自带的IDE
• 常用
• 入门级

适用:
• Python入门
• 功能简单直接
• 300+代码以内

安装官方版本(IDLE)
1、访问Python下载页面www.python.org/download
在这里插入图片描述

2、选择最新的Python 3.x版本,打开下载页面。
3、根据使用的操作系统,单击相应的安装程序链接。
4、下载完毕之后,双击安装程序开始安装。
在这里插入图片描述

5、从开始菜单中选择Python 3.x的选项,选择其中的IDLE(Python GUI):

包含交互式和文件式两种方式

在这里插入图片描述

2、Pycharm

• 由JetBrains公司开发的一款Python IDE,它带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。
• 社区版免费
• 简单、集成度高
• 适合较复杂工程
• 但不自带Python解释器,要使用系统已经安装的解释器

Pycharm下载地址https://www.continuum.io/downloads

Pycharm IDE
在这里插入图片描述

Pycharm基本操作

  • 首先New Project
  • 创建工作目录(如:homework)
  • 然后File->New…创建Python File
  • Run->Run…运行程序
  • 可以Tools->Python Console调出命令行界面来执行单条语句 (或在界面左下角单击Python Console选项)

3、Anaconda

• 开源免费
• 支持近800个第三方库
• 包含多个主流工具
• 适合数据计算领域开发
• 下载地址:https://www.anaconda.com/products/individual

Anacoda下载界面
在这里插入图片描述

• Anaconda组件
在这里插入图片描述

• Anoconda Navigator
在这里插入图片描述

Anoconda组成

  • Conda
    • 一个工具,用于包管理和环境管理,其中:包管理与pip类似,管理Python第三方库;环境管理能够允许用户使用不同版本Python,并能灵活切换
  • 某版本Python(编辑工具Spider)
  • 交互式编程环境Ipython
    • IPython是一个功能强大的交互式shell,适合进行交互式数据可视化和GUI相关应用
  • 其他组件
  • 一批第三方库等

编辑工具Spider
在这里插入图片描述

八、比较Python 2和Python 3

Python 2.0正式发布于2002年。2010年,Python 2.x系列发布最后一版,其主版本号为2.7,用于终结2.x系列版本的发展,并且不再进行重大改进。

Python 3发布于2008年底,是一次重大的升级。Python 3的有些改进不向后与Python 2兼容。

全面了解Python 3和Python 2之间的差异,可参阅What’s New in Python 3.0(http://docs.python.org/3/whatsnew/3.0.html)。

工具2to3(http://docs.python.org/3/library/2to3.html)几乎能将任何Python 2程序自动转换为等价的Python 3程序。

1、Python 3新增功能

Python 3新增了很多功能,一些显著的功能为:

  • 在Python 3中,整数除法的结果完全符合预期:
    在这里插入图片描述

  • 而在Python 2中执行整数除法时,将删除小数部分:
    在这里插入图片描述

  • 在Python 3中, print是函数,易于修改;而在Python 2中,print是语句,就像if和for一样。

  • Python 2有两种类:老式类和新式类,而Python 3完全抛弃了老式类。

  • Python 3重命名了两个重要函数:函数input和range,在Python 2中分别名为raw_input和xrange。

  • Python 3支持格式字符串,而Python 2不支持。Python 2只支持使用运算符%的字符串插入。

此外,Python 3

  • 统一了字符编码,为unicode编码
  • 更新了模块,删除了部分过时的模块或函数,添加一些新的模块
  • 数据结构dict性能优化
  • 不再区分整数和长整数,统一为int

2、该使用哪个Python版本

如果必须使用Python 2程序,可能应选择Python 2;否则,就得将既有的Python 2程序转换为Python 3程序。

有些专用库只支持某个Python版本,如果需要这样的库,在选择Python 版本方面可能受到限制。

如果是刚从事编程工作或刚开始学习Python,不用维护老式Python程序,也无需使用专用库,使用Python 3可能是最佳选择。

九、最简单的Python程序

例1-1:经典程序—在屏幕输出“Hello World!”
• 直接在交互方式(shell)中实现:
在这里插入图片描述

例1-2:经典程序—在屏幕输出“Hello World!”
• 在文件方式中实现。
在这里插入图片描述

国科大研究生Python编程基础课程,内容充实饱满,融合理论知识和实际案例,深入浅出,干货满满,非常适合Python编程学习。
快来加入我的计划,一起肝Python编程吧!


整理不易,关注和收藏后拿走!
欢迎专注我的公众号:AdaCoding 和 Github:AdaCoding123
在这里插入图片描述

  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值