【人生苦短,我学 Python】(1)初识 Python

目录

  • 1. 简述
  • 2. 什么是 Python?
  • 3. 面向对象简述
    • 3.1 面向过程
    • 3.2 面向对象
    • 3.3 面向对象的主要优点
    • 3.4 面向对象的基本概念
    • 3.5 面向对象程序设计
  • 4. Python语言的版本和解释器
  • 5. Python 编程工具
  • 6. Python 的三种编程方式
  • 7. 简单的 Python 程序
  • 8. 高级一点的 Python 程序

1. 简述

这段时间在写爬虫和做数据分析,才发现有一些常用的函数已经不太记得了,因此接着这个机会,重新复习一下 Python,做做笔记,也回味一下那段美好的时光~

2. 什么是 Python?

Python 是一种解释型、面向对象的编程语言,是一个开源语言,拥有大量的库,可以高效地开发各种应用程序。它简单、高级、面向对象、免费开源,有可扩展性、可移植性、丰富的库和可嵌入性。

注意 PythonC 语言不一样,C 语言是编译型语言,而 Python 是解释型语言。那么编译型语言解释型语言有什么区别呢?

  1. 编译型语言
    它要求用户先把整个程序代码写好,随后进行编译,把源代码编译成机器语言的文件,如 exe 格式的可执行文件。因为只需编译一次,以后运行时不需要编译,直接运行可执行文件即可,所以编译型语言执行效率高。
  2. 解释型语言
    它不要求用户一次性把整个程序代码写好,用户可以写一行,执行一行。解释型语言每次运行都需要将源代码解释称机器码并执行,效率较低。

用通俗易懂的例子来讲吧:

比如现在在吃小龙虾,我们的最终目的都是吃完虾肉,

  • 如果你是先去除全部的虾壳再吃虾,那么这就是编译
  • 如果你是剥好一只虾就吃一只虾,剥好一只虾就吃一只虾,那么这就是解释

那么什么又是面向对象呢?

3. 面向对象简述

3.1 面向过程

  • 需要求解的问题域被视为待处理的一个大过程,经分析处理后,并根据问题的复杂程度,整个系统最终被分解为一个个易于处理的子过程。
  • 面向过程方法将过程(或函数)作为系统的主要构件,数据和对数据的操作(函数)分离。
    该方法对需求变化的适应能力差,并且处理大型、复杂问题时,系统维护困难。

像大家熟悉的 C 语言就是面向过程的编程语言。

3.2 面向对象

  • 直接以问题域中的事物(对象)为中心来思考问题,把对象作为系统的基本构成单位,又通过将对象之间的相互作用、相互联系映射到计算机系统来模拟现实客观世界。
  • 面向对象把数据和对数据的处理看成一个整体——对象,其概念和处理方法比较符合人类认识问题、分析问题和解决问题的一般规律。

比如我们今天介绍的 Python 就像面向对象的编程语言。

3.3 面向对象的主要优点

  1. 自然高效:可更客观更自然地描述现实世界。
  2. 易于重用:相关机制可方便继承已有或已经完成的工作,而不必一切从头开始。
  3. 便于维护:开发出的系统健壮,适应性和扩展性强。

3.4 面向对象的基本概念

  1. 对象

    • 人们进行研究的任何事物统称为对象。
    • 对象可以是有形的实体,也可以是活动或事件等。
  2. 属性和方法

    • 属性是描写对象静态特性的数据元素。
    • 方法是用于描写对象动态特性(行为特性)的一组操作。
  3. 封装
    通过对象把数据以及对数据的操作结合在一起。


  4. 类是对一组具有相同特性的对象的抽象描述。

  5. 实例化
    实例化是指在类定义的基础上构造对象的过程。

  6. 继承
    一个新类(子类)从已有的类(父类)那里获得已有特性和功能。

  7. 多态
    不同的对象可以以不同的方式响应相同的消息。

3.5 面向对象程序设计

面向对象程序设计(Object Oriented ProgrammingOOP

  • 主要针对大型软件设计而提出,使得软件设计更加灵活,能够很好地支持代码复用和设计复用,代码具有更好的可读性和可扩展性,大幅度降低了软件开发的难度。
  • 将数据以及对数据的操作封装在一起,组成一个相互依存、不可分割的整体(对象),不同对象之间通过消息机制来通信或者同步。
  • 对相同类型的对象进行分类、抽象后,得出共同的特征而形成了类,面向对象程序设计的关键就是如何合理地定义这些类并且组织多个类之间的关系。
  • 例如,绘图程序中的定义矩形类,一次执行时可以创建很多矩形对象。

4. Python语言的版本和解释器

  1. 版本

    • 2 个主要版本:Python 2Python 3
    • Python 3Python 2 不兼容。
    • Python 2 最迟将于 2020 年全面放弃维护和更新,建议学习和使用 Python 3,本次分享的代码皆使用 Python 3
  2. Python 解释器
    实现 Python 语言语法的程序是 Python 解释器,常用的 Python 解释器:

    • Cpython
    • Jython
    • IronPython
    • PyPy

5. Python 编程工具

Python 的编程工具:

  • IDLE(Python内置的集成开发环境)
  • Anaconda3(内含Jupyter Notebook和Spyder,做数据分析时常用)
  • PyCharm(本人使用的主要编程工具)
  • Visual Studio Code

6. Python 的三种编程方式

  1. 交互式

    对每个输入语句即时运行结果,适合语法练习。
    例如,用 Python 解释器提供的命令行方式。

  2. 文件式

    批量执行一组语句并运行结果,编程的主要方式。
    例如,用 Python 系统提供的 IDLE

  3. Web方式

    在网页中编写代码块,方便添加文字,显示图形,适合学习和算法研究。
    例如,AnacondaJupyter Notebook

7. 简单的 Python 程序

  1. Hello World
    让我们来试试入门每门编程语言前都会输出的一句话:Hello World

    print("Hello World!")
    

    输出:

    Hello World!
    
  2. 简单的算术运算

    print(2023 + 10)
    print(2023 - 10)
    print(2023 * 10)
    print(2023 / 10)
    print(2023 % 10)
    print(2023 // 10)
    

    输出:

    2033
    2013
    20230
    202.3
    3
    202
    
  3. 计算矩形的面积

    length = 3  # 矩形的长
    width = 4   # 矩形的宽
    print(f"矩形的面积为:{length * width}")
    

    输出:

    矩形的面积为:12
    
  4. 画图

    import turtleturtle.pensize(2)
    turtle.circle(10)
    turtle.circle(40)
    turtle.circle(80)
    turtle.circle(160)
    

    输出:

    python画图

8. 高级一点的 Python 程序

  1. 扫雷

    扫雷

  2. 画图——冰墩墩

    在这里插入图片描述

  3. 爬虫

  • 和平精英枪械库图片

    在这里插入图片描述

  1. 可视化大屏

    在这里插入图片描述

  2. 知识系统
    武汉大学建筑知识系统:

    在这里插入图片描述

  3. 背词软件

    在这里插入图片描述

  4. 发送邮件
    在这里插入图片描述

  5. 人工智能(机器学习、深度学习以及强化学习等)
    复现美国OpenAI公司开发的机器学习系统-Hide and Seek(捉迷藏)游戏系统:

    在这里插入图片描述

  6. 大数据分析

    • IMDB数据集分析:
      在这里插入图片描述
  7. 此外还有诸如 web 开发等小程序,这里就不一一列举了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/205669.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

某高品质房产企业:借助NineData平台,统一数据库访问权限,保障业务安全

该企业是中国领先的优质房产品开发及生活综合服务供应商。在 2022 年取得了亮眼的业绩表现,销售额市场占有率跻身全国前五。业务涵盖房产开发、房产代建、城市更新、科技装修等多个领域。 2023 年,该企业和玖章算术(浙江)科技有限…

微软重磅发布4个适合初学者的机器学习资料

自媒体火起来后,很多科技大佬都开始写博客,录视频了,大佬一入行,整个行业卷上天,像我这样的也只能走资源整合之路了,不过这样也好,科技进步,人类发展需要他们。 除了个人&#xff0…

uniapp 富文本以及移动端富文本的展示问题

富文本展示有几种方式: 1.<view v-html"content"></view> 2. uniapp自带组件 rich-text rich-text | uni-app官网 <rich-text :nodes"content"></rich-text> 3.uView组件 u-parse Parse 富文本解析器 | uView 2.0 - 全面兼…

扒一扒Bean注入到Spring的那些姿势

这篇文章我准备来扒一扒Bean注入到Spring的那些姿势。 其实关于Bean注入Spring容器的方式网上也有很多相关文章&#xff0c;但是很多文章可能会存在以下常见的问题 注入方式总结的不全 没有分析可以使用这些注入方式背后的原因 没有这些注入方式在源码中的应用示例 ... 所…

某新闻app sign加密

app下载地址 https://www.wandoujia.com/apps/1597923随便抓个包 url拿下来是这样 https://swnews.dingxinwen.com/api/categorycontent/getContent?page

Altium Designer学习笔记8

创建原理图元件&#xff1a; 画出原理图&#xff1a; 根据规则书画出原理图&#xff1a; 根据规则书画出封装图&#xff1a;

jenkins springCloud项目优雅下线

文章目录 场景解决下线请求效果如图贴一个可用的部署脚本 场景 在 Spring Cloud 项目的微服务实例关闭时&#xff0c;需要首先从注册中心设置为下线&#xff0c;避免该服务的消费者继续请求该服务实例&#xff0c;导致请求失败如果我们在服务实例从注册中心取消注册后&#xff…

【计算机网络】多路复用的三种方案

文章目录 1. selectselect函数select的工作特性select的缺点 2. pollpoll函数poll与select的对比 3. epollepoll的三个接口epoll的工作原理epoll的优点LT和ET模式epoll的应用场景 &#x1f50e;Linux提供三种不同的多路转接&#xff08;又称多路复用&#xff09;的方案&#xf…

腾讯云服务器99元一年是真的吗?假的!

腾讯云服务器99元一年是真的吗&#xff1f;假的&#xff0c;不用99元&#xff0c;只要88元即可购买一台2核2G3M带宽的轻量应用服务器&#xff0c;99元太多了&#xff0c;88元就够了&#xff0c;腾讯云百科活动 txybk.com/go/txy 活动打开如下图&#xff1a; 腾讯云轻量服务器 腾…

电脑盘符错乱,C盘变成D盘怎么办?

在一些特殊情况下&#xff0c;磁盘盘符会出现错乱&#xff0c;C盘可能会变成D盘。那么&#xff0c;这该怎么办呢&#xff1f;下面我们就来了解一下。 通过磁盘管理更改盘符 磁盘管理是Windows自带的工具&#xff0c;它位于“计算机管理”的控制台中。管理硬盘及其所包含的卷或…

什么是凸函数

假设函数是定义在某个向量空间的凸子集上的实值函数&#xff0c;并且&#xff0c;如果对于中的任何两个向量和&#xff0c;都满足&#xff1a; 则称为上的凸函数

基于springboot实现在线外卖平台系统项目【项目源码】

基于springboot实现在线外卖平台管理系统演示 Java技术 Java是由SUN公司推出&#xff0c;该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称&#xff0c;也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具备了显著的…