python继承

常见的 35 个 Python 面试题及答案

别说谁变了你拦得住时间么 提交于 2019-12-04 01:04:07
1. Python 面试问题及答案 作为一个 Python 新手,你必须熟悉基础知识。在本文中我们将讨论一些 Python 面试的基础问题和高级问题以及答案,以帮助你完成面试。包括 Python 开发问题、编程问题、数据结构问题、和 Python 脚本问题。让我们来深入研究这些问题 Python 面试问题 Q.1. Python 的特点和优点是什么? Python 可以作为编程的入门语言,因为他具备以下特质:    1. 解释性 2. 动态特性 3. 面向对象 4. 语法简洁 5. 开源 6. 丰富的社区资源    实际上 Python 的优点远不止这些,更详细的介绍可以阅读 Introduction to Python( https://data-flair.training/blogs/python-tutorial/) Q.2. 深拷贝和浅拷贝的区别是什么? 深拷贝是将对象本身复制给另一个对象。这意味着如果对对象的副本进行更改时不会影响原对象。在 Python 中,我们使用 deepcopy()函数进行深拷贝,使用方法如下: 深拷贝-Python 面试问题及答案 浅拷贝是将对象的引用复制给另一个对象。因此,如果我们在副本中进行更改,则会影响原对象。使用 copy()函数进行浅拷贝,使用方法如下: 浅拷贝—Python 面试问题及答案 Q.3. 列表和元祖有什么不同?

python基础(21):异常处理

僤鯓⒐⒋嵵緔 提交于 2019-12-04 00:25:11
1. 异常和错误 1.1 错误 程序中难免出现错误,而错误分成两种 1.1.1 语法错误 语法错误:这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正。 #语法错误示范一 if #语法错误示范二 def test: pass #语法错误示范三 print(haha 1.1.2 逻辑错误 #用户输入不完整(比如输入为空)或者输入非法(输入不是数字) num=input(">>: ") int(num) #无法完成计算 res1=1/0 res2=1+'str' 1.2 什么是异常 异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下: 1.3 异常种类 在python中不同的异常可以用不同的类型(python中统一了类与类型,类型即类)去标识,不同的类对象标识不同的异常,一个异常标识一种错误。 1.3.1 异常例子 1.触发IndexError: l=['egon','aa'] l[3] 2.触发KeyError dic={'name':'egon'} dic['age'] 3.触发ValueError s='hello' int(s) 1.3.2 常用异常 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x IOError 输入/输出异常;基本上是无法打开文件 ImportError

Python异常捕获及自定义异常类

蹲街弑〆低调 提交于 2019-12-03 23:21:58
Python异常捕获及自定义异常类 一、什么是异常? 异常是一个与业务逻辑无关的BUG,一个潜在错误或者网络错误事件等,如:尚未实现的函数,缩进错误,Python语法错误等.该事件可能会在程序执行过程中发生,影响程序的正常执行. 在Python无法正常处理程序中的代码时,解释器无法继续执行了,异常事件就发生了,Python检测到错误,然后给出一些错误的提示,并终止程序运行,这就是所谓的"异常". 在编程过程中,随时都可能出现异常,哪怕只是一个很简单的功能,只是几句简单的代码. 所以异常是伴随着程序的,有代码就可能有异常. 但是,在实际工作中,我们不希望所有异常产生时都终止程序. 二、Python中的异常捕获 当Python代码发生异常时我们需要捕获它,捕获到异常后,根据自己的需要来自定义处理方式,避免程序终止运行. python异常处理的语法为: try: print("业务逻辑代码!") except: print("自定义异常处理") else: print("业务代码执行后未产生异常时,执行的代码") finally: print("不管业务代码是否产生异常,都会执行的代码") 最常用的格式为try:...except:...,把可能出现问题的代码,放在try中.把处理异常的代码,放在except中,else和finally根据应用场景来选择是否使用. 下面来看一下例子:

Python For 循环

≡放荡痞女 提交于 2019-12-03 23:19:51
版权所有,未经许可,禁止转载 章节 Python 介绍 Python 开发环境搭建 Python 语法 Python 变量 Python 数值类型 Python 类型转换 Python 字符串(String) Python 运算符 Python 列表(list) Python 元组(Tuple) Python 集合(Set) Python 字典(Dictionary) Python If … Else Python While 循环 Python For 循环 Python 函数 Python Lambda Python 类与对象 Python 继承 Python 迭代器(Iterator) Python 模块 Python 日期(Datetime) Python JSON Python 正则表达式(RegEx) Python PIP包管理器 Python 异常处理(Try…Except) Python 打开文件(File Open) Python 读文件 Python 写文件 Python 删除文件与文件夹 Python For 循环 for 循环用于遍历序列(即列表、元组、字典、集合或字符串)。 使用 for 循环,我们可以为列表、元组、集合等序列中的每项执行操作。 示例 打印交通工具列表中的交通工具: vehicle = ["自行车", "汽车", "高铁"] for x

python基础(一)-day01

前提是你 提交于 2019-12-03 22:56:31
01.万恶之源-python基础 ⼀一.python介绍 python的创始⼈人为吉多·范罗苏姆(Guido van Rossum)。1989年年的圣诞节期间,吉多· 范罗苏姆为了了在阿姆斯特丹丹打发时间,决⼼心开发⼀一个新的脚本解释程序,作为ABC语⾔言的⼀一 种继承。 最新的TIOBE排⾏行行榜,Python已经占据世界第四名的位置, Python崇尚优美、清晰、简 单,是⼀一个优秀并⼴广泛使⽤用的语⾔言。 由上图可⻅见,Python整体呈上升趋势,反映出Python应⽤用越来越⼴广泛并且也逐渐得到业内 的认可!!! Python可以应⽤用于众多领域,如:数据分析、组件集成、⽹网络服务、图像处理理、数值计算 和科学计算等众多领域。⽬目前业内⼏几乎所有⼤大中型互联⽹网企业都在使⽤用Python,如: Youtube、Dropbox、BT、Quora(中国知乎)、⾖豆瓣、知乎、Google、Yahoo!、 Facebook、NASA、百度、腾讯、汽⻋车之家、美团等。 ⽬目前Python主要应⽤用领域: 云计算: 云计算最⽕火的语⾔言, 典型应⽤用OpenStack WEB开发: 众多优秀的WEB框架,众多⼤大型⽹网站均为Python开发,Youtube, Dropbox, ⾖豆瓣。。。, 典型WEB框架有Django 科学运算、⼈人⼯工智能: 典型库NumPy, SciPy,

part7-1 Python 的异常处理(try...except 捕获异常、异常类继承、访问异常信息、else、finally回收资源、raise引发异常、自定义异常类、except 和 raise 同时使用)

房东的猫 提交于 2019-12-03 22:45:33
异常机制是编程语言成熟的标准(注:C语言没有提供异常机制),异常机制可使程序中的异常处理代码和正常业务代码分离,提高程序健壮性。Python 异常的5个关键字:try、except、else、finally 和 raise ,在 try 关键字后缩进的代码块称为 try 块,这里放置的可能会引发异常的代码;在 except 后对应的是异常类型和一个代码块,用于处理 try 块中产生的异常,except 块可以有多个;except 块后可以接一个 else 块,在程序不出现异常时要执行 else 块;最后可以接一个 finally 块,finally 块用于回收在 try 块里打开的物理资源,异常机制会保证 finally 块总被执行;raise 可用于引发一个实际的异常,可以做为单独的语句使用,引发一个具体的异常对象。一、 异常概述对于程序设计人员,要尽可能预知所有可能发生的情况,尽可能保证程序在所有糟糕的情形下都可以运行。以前面的五子棋程序为例,当用户输入下棋坐标时,程序要判断用户输入是否合法。如果要保证程序有较好的容错性,将会有如下伪代码: if 用户输入包含逗号之外的其他非数字字符: alert 坐标只能是数值 goto retry elif 用户输入不包含逗号: alert 应使用逗号分隔两个坐标值 goto retry elif 用户输入的坐标值超出了有效范围:

Python——初识面向对象

孤者浪人 提交于 2019-12-03 22:34:05
阅读目录 楔子 面向过程vs面向对象 初识面向对象   类的相关知识   对象的相关知识   对象之间的交互   类命名空间与对象、实例的命名空间   类的组合用法   初识面向对象小结 面向对象的三大特性   继承   多态   封装 面向对象的更多说明   面向对象的软件开发   几个概念的说明   面向对象常用术语 回到顶部 楔子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, 狗可以咬人,怎么描述这种不同的角色和他们的功能呢? 你搜罗了自己掌握的所有技能,写出了下面的代码来描述这两个角色 人和狗的角色定制1 上面两个方法相当于造了两个模子,游戏里的每个人和每条狗都拥有相同里的属性。游戏开始,你根据一个人或一只狗传入的具体信息来塑造一个具体的人或者狗,怎么生成呢? 生成具体的人和狗 两个角色对象生成了,狗和人还有不同的功能呀,狗会咬人,人会打狗,对不对? 怎么实现呢,。。想到了, 可以每个功能再写一个函数,想执行哪个功能,直接 调用 就可以了,对不? bark和walk 调用walk和bark 上面的功能实现的简直是完美! 但是仔细玩耍一会,你就不小心干了下面这件事 在玩耍中犯了一个小错误 事实 上,从你写的代码上来看,这并没出错。很显然

Python 和 JS 有什么相似?

夙愿已清 提交于 2019-12-03 21:22:05
Python 是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有 Python 的身影。作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 Python (比如默认参数、解构赋值、Decorator等),同时本文会对 Python 的一些用法与 JS 进行类比。不管是提升自己的知识广度,还是更好地迎接 AI 时代,Python 都是一门值得学习的语言。 数据类型 在 Python 中,最常用的能够直接处理的数据类型有以下几种: 数字[整数(int)、浮点型(float)、长整型(long)、复数(complex)] 字符串(str) 布尔值(bool) 空值(None) 除此之外,Python 还提供了列表[list]、字典[dict] 等多种数据类型,这在下文中会介绍。 类型转换与类型判断 与 JS 十分类似,python 也能实现不同数据类型间的强制与隐式转换,例子如下: 强制类型转换: int('3')# 3 str(3.14)# '3.14' float('3.14')# 3.14 # 区别于 JS 只有 Number 一种类型,Python 中数字中的不同类型也能相互强制转换 float(3)# 3.0 bool(3)# True bool(0)# False 隐式类型转换: 1+1.0# 2.0 1+False# 1 1.0+True# 2.0 #

面向对象特性与类的重要属性

感情迁移 提交于 2019-12-03 20:33:33
一、面向对象的特性 1. 回顾封装 Python不依赖语言的特性去封装数据,而是通过遵循一定的数据属性或函数属性的命名来达到封装的效果。任何以单下划线开头的名字都应该是内部的、私有的。封装的意义在内部业务逻辑的数据隐藏。Python真正意义上的封装是用类的内外访问来区分的。并且它与Java的private属性有很大的区别,Python并没有强制性的拒绝外部类对私有属性的访问。换句话说,以单下划线或双下划线开头的私有属性仅仅只是一种约定。 (1)第一层封装 : 使用以单下划线开头的私有属性。对象在调用时可直接使用“对象名 . 私有属性名”; (2)第二层封装 :使用以双下划线开头的私有属性。对象在调用时不能直接使用“对象名 . 私有属性名”。需要在双下划线开头的私有属性前加上“_类名”,如:“对象名 . _类名 . 私有属性名”。 (3)第三层封装 :使用自定义的函数来提供接口。明确区分内外,实现内部业务逻辑的封装,并像java的setter和getter方法一样给出外部程序的使用自定义的接口函数,让该接口函数返回一个值私有的性。 2. Python的继承 Python的继承与C++的多继承非常相似,它的继承关系会被解释器解释为一个MRO列表,该MRO列表就是一个简单的所有基类的线性顺序列表。MRO列表的构造是通过一个C3线性化算法来实现的。Python和java一样

Day 6 面向对象初级

a 夏天 提交于 2019-12-03 20:19:22
概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处。 面向过程编程(Procedural Programming) Procedural programming uses a list of instructions to tell the computer what to do step-by-step. 面向过程编程依赖 - 你猜到了- procedures,一个procedure包含一组要被进行计算的步骤, 面向过程又被称为top-down languages, 就是程序从上到下一步步执行,一步步从上到下,从头到尾的解决问题 。基本设计思路就是程序一开始是要着手解决一个大的问题,然后把一个大问题分解成很多个小问题或子过程,这些子过程再执行的过程再继续分解直到小问题足够简单到可以在一个小步骤范围内解决。 while True: if cpu利用率 > 90%: #发送邮件提醒 连接邮箱服务器 发送邮件 关闭连接 if 硬盘使用空间 > 90%: #发送邮件提醒 连接邮箱服务器 发送邮件 关闭连接 if 内存占用 >