Python元组及文件核心对象类型详解

yipeiwu_com6年前Python基础

元组

元组是不可变类型,以()表示,是任意对象的有序集合,同样是序列的一种,index和count方法分别是取元素,统计元素个数。
语法比如(2,3)就是一个元组。元组与列表如此类似,为何需要重复的类型,主要它提供了不变性,提供了”常数”声明。元组项虽不能修改,但是嵌套里面的列表项还是可以修改的。

文件

open内置函数创建文件对象,通过这个对象对外部文件进行操作。函数有三个参数,第一个文件路径,第二个是打开模式,打开模式有三种:'r'表示读文件,'w'表示写文件,'a'表示打开文件追加内容,'+'是读写都可以的文件。默认是'r',即读模式。第三个是可选参数,输入0表示输出无缓存。

文件对象的常用方法如flush输出缓冲区刷到硬盘中,close手动关闭文件等。

文件的基础用法

  • 文件迭代器是最好的读取行工具,虽然文件也提供了读取行的方法。
  • 读取返回的内容是字符串,写入的内容也是字符串,所以需要类型转换。
  • close是通常选项,虽然Python在文件对象不再引用时可能会自动关闭文件。
  • 文件的写入默认是有缓冲的,所以不一定即时写到硬盘中去,需要调用flush方法。

在文件中存储对象之前需要把对象转换为字符串,eval内置函数执行Python的字符串中的表达式即转换成对应对象。避免字符串和对象之间的相互转换可以使用pickle模块,调用pickle模块的dump函数可以将对象写入到文件中,调用pickle模块的load函数可以从文件中读取对象。

相关文章

解决matplotlib库show()方法不显示图片的问题

最近使用python里的matplotlib库绘图,想在代码结束时显示图片看看,结果图片一闪而过,附上我原来代码: import matplotlib.pyplot as plt i...

深入理解Django自定义信号(signals)

django中自定义了一些singals,用于监听一些操作,并发出通知 官方解释: Django 提供一个“信号分发器”,允许解耦的应用在框架的其它地方发生操作时会被通知到。 简单来说...

用Python写一个模拟qq聊天小程序的代码实例

Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput...

PyTorch中Tensor的拼接与拆分的实现

拼接张量:torch.cat() 、torch.stack() torch.cat(inputs, dimension=0) → Tensor 在给定维度上对输入的张量序列 s...

python使用json序列化datetime类型实例解析

使用python的json模块序列化时间或者其他不支持的类型时会抛异常,例如下面的代码: # -*- coding: cp936 -*- from datetime import d...