Python数据分析和挖掘实战学习02

一、Java异常处理

1.异常发生的原因

异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。异常发生的原因有很多,通常包含以下几大类:用户输入了非法数据、要打开的文件不存在以及网络通信时连接中断,或者JVM内存溢出。

这些异常有的是因为用户错误引起的,有的是程序错误引起的,还有其它一些是因为物理错误引起的。

2. 三种异常类型

(1)检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如打开一个不存在的文件时,一个异常在编译时不能被简单地忽略。

(2)运行时异常:运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。

(3)错误:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译时也检查不到。

3.声明自定义异常

(1)通过一个银行账户的模拟,通过银行卡的号码完成识别,可以进行存钱和取钱的操作。首先自定义一个异常类,继承Exception类。

 

(2)为了使用定义好的异常类,在CheckingAccount类中包含一个withdraw()方法抛出一个InsufficientFundsException异常。

(3)在BankDemo类中的主程序中调用CheckingAccount类的deposit()和withdraw()方法。

(4)运行结果如下图所示:

二、学习Python语言

1.基础平台搭建

(1)操作系统:Win10系统

(2)Python:Python3.9

(3)IDE:PyCharm

2.Python基础知识

(1)基本运算

 

(2)判断与循环

Python一般不用花括号{},也没有end语句,它是用缩进对齐作为语句的层次标记的。同一层次的缩进量要一一对应,否则会报错。if-else判断语句如下所示:

Python的循环也相应地有for循环和while循环。

其中in是一个非常方便、而且非常直观的语法,用来判断一个元素是否在列表/元组中,range用来生成连续序列,一般语法为range(a,b,c),表示以a为首项,c为公差且不超过b-1的等差数列。

(3)函数

Python使用def来自定义函数。

此外Python还支持使用lambda对简单的功能定义“行内函数”。

(4)数据结构

Python有4个内建的数据结构——List(列表)、Tuple(元组)、Dictionary(字典)以及Set(集合),它们可以统称为容器(container),因为它们实际上是一些“东西”组合而成的结构,而这些“东西”,可以是数字、字符甚至是列表,或者是它们之间几种的组合。

Ⅰ.列表/元组

列表和元组都是序列结构,它们本身很相似,但又有一点不同的地方。从外形上看,列表使用方括号标记的,如a=[1,2,3],而元组使用圆括号标记的,如b=(4,5,6),访问列表和元组中的元素的方式都是一样的,如a[0]等于1,b[2]等于6等。正如之前所述,容器里是什么都可以,因此如下所示的定义也是成立的。

从功能上看,列表可以被修改,而元组不可以。

与列表有关的函数是list,而与元组有关的函数是tuple,它们的用法和功能几乎一样,都是将某个对象转换为列表/元组。

Ⅱ.字典

Python引入了“自编”这一方便的概念。从数学上讲,它实际上是一个映射。通俗来讲,它也相当于一个列表,然而它的“下标”不再是以0开头的数字,而是从自己定义的“键”(key)开始。创建一个字典的基本方法如下图所示。

此处的‘today’和‘tomorrow’就是字典的键,它在整个字典中必须是唯一的,而‘6’和‘7’就是键对应的值,访问字典中的元素的方法也很直观。

Ⅲ.集合

Python内置了集合这一数据结构,同数学上的集合概念基本上是一致的,它与列表的区别在于:1.它的元素是不重复的,而且是无序的;2.它不支持索引。一般通过花括号{}或者set()函数来创建一个集合。由于集合的特殊性,因此集合有一些特别的运算。

Ⅳ.函数式编程

函数式编程是一种编程泛型,它将计算机运算视为数学上的函数计算,并且避免使用程序状态以及易变对象。简单来讲,函数式编程是一种“广播式”的编程,一般结合前面提到过的lambda定义函数,用于科学计算中,会显得特别简洁方便。

在Python中,函数式编程主要由几个函数的使用构成:lambda()、map()、reduce()、filter()。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值