第三周周报

本文概述了学习者本周在Python中的进展,包括从基础知识进入面向对象编程,掌握异常处理,使用JSON数据格式,实现数据可视化(如折线图、地图、柱状图)以及使用pyecharts模块,并介绍了面向对象概念如类、对象、构造方法和魔术方法,以及封装的重要性。
摘要由CSDN通过智能技术生成

本周主要结束了Python第一阶段基础知识的学习,开始进入到第二阶段面向对象的学习,同时完成了每周的算法任务。

目录

异常

Python基础综合案例

折线图可视化

JSON数据格式

pyecharts模块

地图可视化

动态柱状图

基础柱状图

时间线柱状图

GDP动态柱状图

面向对象

初始对象

类的定义和使用

类和对象

构造方法

魔术方法

__str__字符串方法

__lt__小于符号比较方法

__le__小于等于比较符号方法

__eq__比较运算符实现方法

封装


异常

http://t.csdnimg.cn/6EHLz

Python基础综合案例

通过对综合案例的学习来巩固前面所学习的基础知识。

折线图可视化

JSON数据格式

1.JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式取组织和封装数据。

2.JSON本质上是一个带有特定格式的字符串。

3.功能:JSON就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互。所以JSON可以直接和python的字典或列表进行无缝衔接。

4.通过json.dumps(date)方法把python数据转化为了json数据,如果有中文可以带上:ensure_ascii=False参数来确保中文正常转换。

5.通过json.loads(date)方法把json数据转化为了python列表或字典。

pyecharts模块

1.借助pyecharts模块可以做出数据可视化效果图。

2.安装:使用前面学过的pip命令即可快速安装pyecharts模块。      

3.使用:利用pyecharts包绘制一周的最高气温变化图如下:(要注意大小写)

4.pyecharts模块中的配置选项:全局配置选项和系列配置选项。

5.全局配置选项可以通过set_global_opts方法来进行配置。

下面是一个给折线图添加标题的操作,其他的配置选项可以在pyecharts官网里查询。

地图可视化

动态柱状图

基础柱状图

1.通过Bar()构建基础柱状图。

2.和折线图一样,通过add_xaxis()和add_yaxis()添加x和y轴数据。

3.通过柱状图对象的:reversal_axis(),反转x和y轴。

4.通过label_opts=labelOpts(position="right")设置数值标签在右侧显示。

根据下面这串代码,将绘制的一周气温折线图绘制成柱状图如下:

将x轴与y轴翻转如下:

时间线柱状图

1.Timeline()—时间线,时间线就是创建一个一维的x轴,轴上的每一个点就是一个图表对象。

2.根据以下代码绘制简单的两周气温变化图如下:

第一周:

第二周:

如果想添加自动播放功能,则加入以下代码即可。

如果想改变柱体颜色,加入以下代码即可。

GDP动态柱状图

1.列表的sort方法。之前学习过的sorted函数可以对数据容器进行排序。在后面的数据处理中,我们需要对列表进行排序,并按照指定排序规则,sorted就无法完成了,因此需要学习列表的sort方法。其使用方式如下:

列表.sort(key=选择排序依据的函数,reversal=True|False)

  • 参数key,是要求传入一个函数,表示将列表的每一个元素都传入函数中,返回排序的依据。
  • 参数reverse,是否反转排序的结果,Ture表示降序,False表示升序。

带函数名形式:

匿名lambda形式:

面向对象

初始对象

1.使用对象组织数据

  • 在程序中打印表格,我们称之为设计类(class)

        class Student:

                name=None

  • 在程序中打印生产表格,我们称之为创建对象

        stu_1=Student()

        stu_2=Student()

  • 在程序中填写表格,我们称之为对象属性赋值

        stu_1.name="Tom"

        stu_2.name="Jack"

类的定义和使用

1.类的使用语法:

class 类名称:

        类的属性

        类的行为

  • class是关键字,表示要定义类了
  • 类的属性,即定义在类中的变量(成员变量)
  • 类的行为,即定义在类中的函数(成员方法)

2.创建类对象的语法:对象=类名称()

3.成员方法的定义语法:

def  方法名(self,形参1,......,形参N):

        方法体

  • self关键字是成员方法定义时必须要填写的,它用来表示类对象自身的意思
  • 当我们使用类对象调用方法的时候,self会自动被python传入
  • 在方法内部,想要访问类的成员变量,必须使用self

想在成员方法内访问成员变量,必须使用self.才能够访问到,访问外部传入的参数直接用即可。

类和对象

1.现实世界的事物由属性和行为组成。

2.类也可以包含属性和行为,所以使用类描述现实世界事物是非常合适的。

3.类是程序中的“设计图纸”,对象是基于图纸生产的具体实体。

4.面向对象编程就是使用对象进行编程,即设计类,基于类创建对象,并使用对象来完成集体的工作。

根据学过的内容简单设计一个闹钟,代码如下:

构造方法

1.python类可以使用__init__()方法,称之为构造方法。可以实现:

  • 在创建类对象(构造类)的时候,会自动执行。
  • 在创建类对象(构造类)的时候,将传入参数自动传递给_init_方法使用。

2.init前后都有2个下划线

3.构造方法也是成员方法,不要忘记在参数列表中提供:self

4.在方法内使用成员变量需要使用self

魔术方法

__str__字符串方法

1.当类对象需要被转换为字符串时,会输出内存地址。

2.内存地址没有多大作用,我们可以通过__str__方法,控制类转换为字符串的行为。

__lt__小于符号比较方法

直接对两个对象进行比较是不可以的,但是在类中实现__lt__方法,即可同时完成:小于符号和大于符号2种比较。

__le__小于等于比较符号方法

魔术方法:__le__可用于:<=、>=两种比较运算符上。

__eq__比较运算符实现方法

  • 不实现__eq__方法,对象之间可以比较,但是是比较内存地址,也即是:不同对象==比较一定是False结果。
  • 实现了__eq__方法,就可以按照自己的想法来决定2个对象是否相等了。

封装

1.封装是指将现实世界事物在类中描述为属性和方法,即为封装。

2.现实事物有部分属性和行为是不公开对使用者开放的。同样在类中描述属性和方法的时候也需要达到这个要求,就需要定义私有成员了。

3.成员变量和成员方法的命名均以__作为开头即可。

4.类对象无法访问私有成员,类中的其他成员可以访问私有成员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值