随笔分类 - Python学习笔记
摘要:csv(Comma Separated Values)是逗号分隔符文本格式,常用于数据交换、Exce文件和数据库数据的导入和导出。与 Excel 文件不同,CSV 文件中: 值没有类型,所有值都是字符串 不能指定字体颜色等样式 不能指定单元格的宽高,不能合并单元格 没有多个工作表 不能嵌入图像图表
阅读全文
摘要:###使用 pickle 序列化 Python 中,一切皆对象,对象本质上就是一个“存储数据的内存块”。有时候,我们需要将“内存块的数据”保存到硬盘上,或者通过网络传输到其他的计算机上。这时候,就需要“对象的序列化和反序列化”。 对象的序列化机制广泛的应用在分布式、并行系统上。 序列化指的是:将对象
阅读全文
摘要:文件对象封装了文件相关的操作。在前面我们学习了通过文件对象对文件进行读写操作。本节我们详细列出文件对象的常用属性和方法,并进行说明。 ###文件对象的属性 ###文件对象的打开模式 ###文件对象的常用方法 with open("e.txt", "r", encoding="utf-8") as f
阅读全文
摘要:二进制文件的处理流程和文本文件流程一致。首先还是要创建文件对象,不过,我们需要指定二进制模式,从而创建出二进制文件对象。例如: f = open(r"d:\a.txt", 'wb') #可写的、重写模式的二进制文件对象 f = open(r"d:\a.txt", 'ab') #可写的、追加模式的二进
阅读全文
摘要:【操作】为文本文件每一行的末尾增加行号 with open("e.txt","r",encoding="utf-8") as f: lines = f.readlines() lines = [ line.rstrip()+" #"+str(index+1)+"\n" for index,line
阅读全文
摘要:###文本文件的读取 文件的读取一般使用如下三个方法: 1. read([size]) 从文件中读取 size 个字符,并作为结果返回。如果没有 size 参数,则读取整个文件。读取到文件末尾,会返回空字符串。 2. readline() 读取一行内容作为结果返回。读取到文件末尾,会返回空字符串。
阅读全文
摘要:###with 语句(上下文管理器) with 关键字(上下文管理器)可以自动管理上下文资源,不论什么原因跳出 with 块,都能确保文件正确的关闭,并且可以在代码块执行完毕后自动还原进入该代码块时的现场。 【操作】使用 with 管理文件写入操作 s = ["高淇\n", "高老三\n", "高老
阅读全文
摘要:###write()/writelines()写入数据 write(a):把字符串 a 写入到文件中 writelines(b):把字符串列表写入文件中,不添加换行符 【操作】添加字符串列表数据到文件中 f = open(r"d:\bb.txt","w",encoding="utf-8") s =
阅读全文
摘要:在操作文本文件时,经常会操作中文,这时候就经常会碰到乱码问题。为了让大家有能力解决中文乱码问题,这里简单介绍一下各种编码之间的关系 常用编码之间的关系如下: ###ASCII 全称为 American Standard Code for Information Interchange,美国信息交换标
阅读全文
摘要:一个完整的程序一般都包括数据的存储和读取;我们在前面写的程序数据都没有进行实际的存储,因此 python 解释器执行完数据就消失了。实际开发中,我们经常需要从外部存储介质(硬盘、光盘、U 盘等)读取数据,或者将程序产生的数据存储到文件中,实现“持久化”保存。 有基础的同学知道,很多软件系统是将数据存
阅读全文
摘要:Pycharm 开发环境的调试进行调试的核心是设置断点。程序执行到断点时,暂时挂起,停止执行。就像看视频按下停止一样,我们可以详细的观看停止处的每一个细节。 断点 程序运行到此处,暂时挂起,停止执行。我们可以详细在此时观察程序的运行情况,方便做出进一步的判断。 1. 设置断点:(1) 在行号后面单击
阅读全文
摘要:程序开发中,有时候我们也需要自己定义异常类。自定义异常类一般都是运行时异常,通常继承 Exception 或其子类即可。命名一般以 Error、Exception 为后缀。 自定义异常由 raise 语句主动抛出。 【示例】自定义异常类和 raise 语句 #coding=utf-8 #测试自定义异
阅读全文
摘要:trackback 模块【示例】使用 Traceback 模块打印异常信息 #coding=utf-8 import traceback try: print("step1") num = 1/0 except: traceback.print_exc() 运行结果: 运行结果: step1 Tra
阅读全文
摘要:finally 块由于是否发生异常都会执行,通常我们放释放资源的代码。其实,我们可以通过 with 上下文管理,更方便的实现释放资源的操作。 with 上下文管理的语法结构如下: with context_expr [ as var]: 语句块 with 上下文管理可以自动管理资源,在 with 代
阅读全文
摘要:由于 return 有两种作用:结束方法运行、返回值。我们一般不把 return 放到异常处理结构中,而是放到方法最后。 【示例】return 和异常结构的正确处理方式 def test01(): print("step1") try: x = 3 / 0 # return "a" except:
阅读全文
摘要:try...except...finally 结构try...except...finally 结构中,finally 块无论是否发生异常都会被执行;通常用来释放 try 块中申请的资源。 【示例】try...except...finally 结构简单测试 try: a = input("请输入一个
阅读全文
摘要:try...except...else 结构 try...except...else 结构增加了“else 块”。如果 try 块中没有抛出异常,则执行 else 块。如果try 块中抛出异常,则执行 except 块,不执行 else 块。 【示例】try...except...else 结构执行
阅读全文
摘要:上面的结构可以捕获所有的异常,工作中也很常见。但是,从经典理论考虑,一般建议尽量捕获可能出现的多个异常(按照先子类后父类的顺序),并且针对性的写出异常处理代码。为了避免遗漏可能出现的异常,可以在最后增加 BaseException。结构如下: try: 被监控的、可能引发异常的语句块 except
阅读全文
摘要:try...一个 except 结构try...except 是最常见的异常处理结构。结构如下: try: 被监控的可能引发异常的语句块except BaseException [as e]: 异常处理语句块 try 块包含着可能引发异常的代码,except 块则用来捕捉和处理发生的异常。执行的时候
阅读全文
摘要:###导引问题 在实际工作中,我们遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求;你的程序要打开某个文件,这个文件可能不存在或者文件格式不对;你要读取数据库的数据,数据可能是空的;我们的程序再运行着,但是内存或硬盘可能满了等等。软件程序在运行过程中,非常可能遇到刚刚提
阅读全文