251浏览
0点赞

7.8、Python类方法的使用

类方法也不属于某个对象,所以其第一个参数也不为self。但它属于某个类,所以其第一个参数一定是cls。@classmethoddefstatic_func(cls,参数列表):pass在使用时不需要指定第一个参数 cls,因为该函数有一个隐含的属性 __self__,它就是 cls 的值。 class Student: # 定义
289浏览
0点赞

7.9、Python类的私有属性

在 C++ 和 Java 中,属性(成员)有访问控制,如 public 表示任意代码可以访问该属性,private 表示仅当前类的代码才可以访问该属性。Python 中没有这个访问控制符,但是可以在属性前面加上 __ 两个下划线来表示该属性不能在类外部访问。一般的属性都是可以在类的外部访
285浏览
0点赞

7.9、Python只读属性的设置(2种方法)

默认情况下,实例对象的所有成员都是可以读和写的。但有时希望做一些限制,如只能读不能修改,或者检查修改的值必须符合类型要求或者范围要求。实现该功能的方法有多种,这里主要介绍使用 @property 修饰符和定义 __setattr__() 函数两种方法。使用@property修饰符该方
295浏览
0点赞

7.10、Python类的派生(派生类)

派生是面向对象编程的基本概念,它赋予了我们基于某个基础类来轻松创建新类的能力。使用派生类的方法,我们可以复用他人的代码,不必从 0 开始创建自己的轮子。定义一个基于某个现有类的新类的方法如下:def新类(现有的类):pass现有的类,有时也称为基类、父类;新类也
284浏览
0点赞

6.1、Python异常处理机制

异常处理也是现代编程语言的基本特性,使用异常处理可以将正常分支和异常分支分割开来,而不像 C 语言那样,正常分支和异常分支是混在一起的。在 Python 中,异常就是一个特殊的对象,通过该异常对象可以给异常处理函数传递异常发生时的信息。Python 2 和 Python 3 中异
295浏览
0点赞

6.2、Python try except语句:捕获异常

捕捉异常就是如果某个代码段中出现了异常,需要定义好相应的异常处理代码。这样异常就被处理掉了,而不是一直向上传递,直到最后导致整个程序退出。下面介绍几种捕捉异常的方法。1) 捕捉任意异常最简单的处理方式是捕捉任意异常,方法是使用下面的分支语句:except:该分
292浏览
0点赞

6.3、Python try else语句的用法

前面介绍的都是 except 分支,也就是异常分支。except 分支在发生异常时被执行。本节介绍的分支在没有抛出异常时才被执行,这就是 else 分支。下面演示了这种用法。 def except_demo(a, b): # 定义一个包含异常处理的函数... try:... a = a / b... except ZeroDivisionE
274浏览
0点赞

6.4、Python try finally语句的用法

前面介绍了 except 分支和 else 分支,它们分别在有异常抛出和没有异常抛出时被执行。接下来介绍另一个分支,该分支在任何情况下都会被执行,而且是在最后被执行,这就是 finially 分支。下面是 finally 分支的一个例子。 def finally_demo(a, b): # 定义一个包含异常处
336浏览
0点赞

6.5、Python raise语句:主动抛出异常

通常情况下,我们的代码不会主动抛出异常,而是通过返回一个错误码来告知调用者这里出现了不该出现的错误。其实我们也可以在代码中抛出异常,通过异常将相关的错误信息发送出去。可以使用 raise 语句来抛出异常,该语句后面需要带一个对象,该对象必须是派生自 BaseExce
218浏览
0点赞

6.6、Python常见的异常类型汇总

本节将介绍常见的系统定义的异常类。以后如果看到这些对象被抛出,便可以大致明白出现了什么情况。比如,如果在代码运行的日志中看到下面的异常:Traceback (most recent call last): File stdin, line 1, in moduleTypeError: unsupported operand type(s) for /: '
207浏览
0点赞

6.7、Python assert实现软件测试

Python 对于测试非常看重,例如测试中最常见的操作——断言 assert,其在 Python 中就是一个关键字而不是一个函数。而在 C 语言中,assert 只是一个普通的函数。从这点也可以看出,Python 将测试当作最基础的部分。可以通过使用下面的代码来查看 Python 语言定义的关键
193浏览
0点赞

5.1、Python文件的基本操作

如果希望将数据长久保存,最简单的办法就是将数据写入磁盘文件中。这样在程序退出后,处理结果依然长期有效。对于大型软件项目,文件操作是无法避免的。注意,本节主要介绍普通文本文件和二进制文件的操作方法,对于 json、yaml、cvs、xml 等特殊格式的文件,一般都有对
187浏览
0点赞

5.2、Python open():打开文件

打开文件可以使用“open(文件名,模式)”来完成。该函数有两个参数,第一个参数是文件名,第二个参数是打开的模式。该函数返回一个文件对象,以后的读写都需要使用该文件对象。文件名可以包含路径,如 cfg/config.ini。使用绝对路径和相对路径都是允许的,但不能使用
246浏览
0点赞

5.3、Python read()函数:读入指定长度的文本

read() 函数从当前位置开始读,读出指定个数的字符。其返回值是一个字符串,表示读取的文件内容。参数 size 如果为正数,表示最多读出 size 个字符;如果 size 为 0,则什么也不会读出,返回值是空字符串;如果 size 为负数,表示读出全部的内容。size 的默认值是 -1,
302浏览
0点赞

5.4、Python readline()函数:读取一行文本

readline()函数的功能是读入一行数据,所以文件类型要求是文本,不能是二进制。返回值是这行数据,包括尾部的换行符;如果没有数据则返回一个空的字符串。该函数也带有参数 size,表示的含义和 read() 一样。size 的默认值也是 -1,表示读取完整的一行。下面的例子演示
278浏览
0点赞

5.5、Python readlines()函数:读取所有行的文本

readlines() 函数将文件的每行作为一个元素,组合成一个列表返回。参数 hint 用来限制读入的行数。如果参数 hint 为负数或者 0,表示没有行数的限制。hint 的默认值是 -1,即默认情况下是不对读入的行数进行限制的,返回的是文件的所有行。下面的例子演示了没有指定 hin
258浏览
0点赞

5.6、Python write()和writelines()函数:写入文本

在 Python 3 中,write() 函数的返回值是参数 data 的字节数。在 Python 2 中,其返回值是 None。下面演示了这种不同:fd=open(out.dat,w)#Python3中的情况fd.write(line1)#写入字符串,返回值是字符的个数6fd.close()5fd=open(out.dat,w)#Python2中的情况下打开文件fd.
211浏览
0点赞

5.7、Python tell()函数:获得当前读取位置

文件可以被看作是字节流或者字符流。第一个读入的字符是在该流的第 0 个位置上。如果读入了 5 个字符,则现在在该流的第 5 个位置上。我们可以用 tell() 来得到当前位置,其返回一个整数。下面的例子演示了 tell() 的用法。try:file_obj1=open(udata.txt,r)pos=file_obj
225浏览
0点赞

5.8、Python seek()函数:设定读写位置

可以使用 seek() 函数调整当前读写文件的位置。例如,我们从文件头部读取了 1000 个字节,处理这 1000 个字节后发现还有一个很重要的信息在文件的第 3 个字节,此时可以将当前位置移动到相对头部 3 个字节的位置,这样下次 read() 操作便可以得到希望得到的信息。该函数
246浏览
0点赞

5.9、Python fileno()函数:得到文件编号

该函数用于得到文件在进程中的编号,这是一个整数值。其中,stdin 在进程中的文件编号永远是 0,stdout 永远是 1,stderr 永远是 2,其他文件的编号都大于 2。下面的例子查看了普通文件的编号以及 3 个特殊文件的编号。importsys#引入sys模块fd=open(./in.dat,rb)#打开
今日排行
本周排行
本月排行
专业服务,成就每一位AI数据科学家
免费注册体验
联系我们