(10)python输入\输出处理,文件访问

一、前言

因个人习惯,在阅读和学习文字资料时,习惯摘写笔记,因此在这里留下自己的学习记录。笔记的内容偏摘抄为主,并非自己的原创内容。

内容基于:《简明 Python 教程》Swaroop, C. H. 著沈洁元  译

二、简单的输入输出处理

通过input()函数可以获取用户的输入

通过print()函数可以实现结果的输出

三、文件的操作(File)

注意:文件的操作包括file类的read、readline或write等(这是python2支持的,python3不支持),操作能力依赖于打开文件时的模式,完成操作时,要调用close通知python操作完成。(python3主要支持open)

文1件的打开模式:

(1)r:读模式;(没有指定时,为默认模式)

(2)w:写模式;(文件存在则覆盖,不存在则新建)

(3)a:追加模式。(文件存在则在末尾追加,不存在则新建)

还有其他模式,通过help(open)可查询。

(1)打开文件

在python3,已不支持file类函数,要获取一个file对象,通过open()函数,该函数返回一个file对象。

open(filename,openmpde)      

filename:包含文件名的路径字符串;

openmodel:文件访问模式,不同模式的操作能力不一样。

例子:

file = open(r"D:\workspace\name.txt",'w')

file.write("想写入的内容“)

file.close

line = file.readline()

当 len(line)==0时,则表示读取完毕。

四、存储器(pickle)

pickle,时python提供的标准模块,通过它可以在一个文件中存储任何Python对象,此后又可以无损取出,被称为持久地存储对象

cPickle,功能与pickle一致,但是用C语言编写,相对快1000倍。(python3移除该模块了

两者统称为pickle模块。

(1)对象的存储与取出

存储器的dump(对象,文件对象)函数,即把对象存储到打开的文件中。

存储器的load(文件对象)函数,即从打开的文件中取出对象。

注意:由于python3移除了cPickle模块,所以只能使用pickle来实现

(1)导入pickle模块,并用p替代;(import pickle as p)

(2)新建一个文件,用于保存对象,文件类型为data;(file = open("filename.data",'wb'))打开模式记得为wb,即以二进制写入;

(3)新建一个对象;(shoplist = ['asda','asfff','rhgrh'])

(4)调用存储器,把对象写入文件,并关闭文件结束操作;(p.dump(对象,文件对象))  file.close

(5)调用存储器,从文件中读取对象;(对象变量 = p.load(文件对象路径,‘rb’)

猜你喜欢

转载自blog.csdn.net/chen_courage/article/details/81102219