Python学习:文件

内置open()函数会创建一个Python文件对象,可以作为计算机上的一个文件链接。在调用open()之后,可以通过调用返回文件对象的方法来读写相关外部文件。

  • 打开文件:
output = open(‘C:\spam‘, ‘w‘)       #打开文件,模式为写入
input = open(‘C:\spam‘, ‘r‘)        #打开文件,模式为读出
input = open(‘C:\spam‘)             #同上,默认为‘r‘
  • 文件的读操作:
aString = f.read()              #把整个文件读进单一字符串aString中
aString = f.read(N)             #读取文件的前N个字符,存入aString
aString = f.readline()          #读取一行
aString = f.readlines()         #读取整个文件,存入字符串列表aString
  • 文件的写操作:
f.write(aString)                #写入aString字符串到f文件
f.writelines(aList)             #把列表aList中的所有字符串写入文件f
  • 关闭文件:
f.close()

其他操作:

f.flush()              
f.seek(N)                #修改文件位置到偏移量N处,进行下一步操作
for line in f.open(‘myfile‘):           #文件迭代器一行一行的读取
open(‘filename.txt‘, encoding=‘latin-1‘)     #Python3. Unicode文本文件(string字符串)
open(‘filename.txt‘, ‘rb‘)        #Python3.0二进制byte文件(bytes字符串)

注:文件数据在脚本中一定是字符串,而写入方法如f.write()不会替我们坐任何字符串转换工作,需要我们手动转换。

  • 内置函数eval()
>>>line = F.readline()
>>>line
"[1,2,3]${‘a‘:1, ‘b‘:2}\n"
>>>parts = split(‘$‘)
>>>parts
[‘[1,2,3]‘, "{‘a‘:1, ‘b‘:2}\n"]
>>>eval(parts[0])
[1,2,3]
>>>obj = [eval(P) for P in parts]
>>>obj
[[1,2,3],{a‘:1, ‘b‘:2}]
  • 用pickle模块存储Python的原生对象

pickle模块是能够让我们直接在文件中存储几乎任何Python对象的高级工具,也并不要求我们把字符串转换来转换去。它就像是超级通用的数据格式化和解析工具。例如,想要在文件中存储字典,就直接用pickle来储存。

>>>D = {‘a‘:1, ‘b‘:2}
>>>F = open(‘myfile‘, ‘wb‘)
>>>import pickle

之后想要取回字典时:

>>>pickle.load(F)

事实上,pickle内部将字典转成字符串形式。

时间: 2024-10-13 01:19:22

Python学习:文件的相关文章

Python学习-文件操作

打开和关闭文件: Python 提供了必要的函数和方法进行默认情况下的文件基本操作. open 函数 你必须先用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. 语法: file object = open(file_name [, access_mode][, buffering]) 各个参数的细节如下: ①file_name:file_name变量是一个包含了你要访问的文件名称的字符串值. ②access_mode:access_mode

Python学习—文件操作

1.文件基础知识 1.文件是存储在外部介质上的数据的集合,文件的基本单位是字节,文件所含的字节数就是文件的长度.每个字节都有一个默认的位置,位置从0开始,文件头的位置就是0,文件尾的位置是文件内容结束后的后一个位置,该位置上没有文件内容,为空.文件的读写操作从文件指针所在的位置开始,即读会从文件指针所在的位置开始读取,写会从文件指针所在的位置开始写,如有内容,则会被覆盖.2.按文件中数据的组织形式把文件分为文本文件和二进制文件两类.文本文件存储的是常规字符串,由文本行组成,通常以换行符'\n'结

python学习---文件的基本操作

对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作: f = open('file.txt','r') #以只读方式打开一个文件,获取文件句柄,如果是读的话,r可以不写,默认就是只读, 在python2中还有file方法可以打开文件,python3中file方法已经没有了,只有open frist_line = f.readline()#获取文件的第一行内容,返回的是一个list print(frist_line)#打印

python学习文件

f = open('file的路径') 文件打开模式   打开模式 执行操作 'r' 以只读方式打开文件(默认) 'w' 以写入的方式打开文件,会覆盖已存在的文件 'x' 如果文件已经存在,使用此模式打开将引发异常 'a' 以写入模式打开,如果文件存在,则在末尾追加写入 'b' 以二进制模式打开文件 't' 以文本模式打开(默认) '+' 可读写模式(可添加到其他模式中使用) 'U' 通用换行符支持 文件对象方法 文件对象方法 执行操作 f.close() 关闭文件 f.read([size=-

第26天python学习文件批量处理

补充代码太长使用\换行 #每个使用close不方便with open("test2","w") as f: f.write('jjjjjl') #读自能是字符串# f=open("test1",encoding="gbk")#打开# data=f.read()#读取# print(data)# f.close()#关闭 f=open("test1","r")#打开# data=f.rea

Python学习——文件操作和异常处理

# title = "Alice in Wonderland"# print(title.split()) def count_words(filename): ''' count how many words in a text file ''' try: with open(filename) as f_obj: contents = f_obj.read() except FileNotFoundError: pass #msg = "Sorry, the file &

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2--python文件类型.变量.数值.字符串.元组.列表.字典 一.Python文件类型 1.源代码 python源代码文件以.py为扩展名,由pyton程序解释,不需要编译 [[email protected] day01]# vim 1.py #!/usr/bin/python        print 'hello world!' [[email protected] day01]# python 1.py hello world! 2.字节代码 Python源码文件

python学习笔记5:python读写文件

python学习笔记5:python读写文件 一.文件的打开模式 1.打开文件 1) f=open('D:\\a.txt','w') 第一个参数是文件的路径,如果只写文件的名字,默认是在当前执行目录下的文件:第二个参数是文件的打开模式 这种方式打开文件,在使用完了之后一定要记得,关闭文件: f.close() 2) with open('D:\\a.txt','w') as f 这种方式打开文件,文件在使用完后会自动关闭文件,不需要close  2. 文件的打开模式 总的来说,文件的打开模式有三

python学习笔记九——文件与目录

1.python进行文件读写的函数是open或file类 mode:r  只读 r+   读写 w  写入,先删除原文件,再重新写入,如果文件没有则创建 w+  读写,先删除原文件,再重新写入,如果文件没有则创建(可写入和输出) a  写入,在文件末尾追加新的内容,文件不存在则创建 a+  读写,在文件末尾追加新的内容,文件不存在则创建 b  打开二进制文件,可与r,w,a,+结合使用 U  支持所有的换行符号,"\r","\n","\r\n"

Python学习入门笔记(一):Python文件类型

1.源代码 扩展名:.py,由Python程序解释,不需要编译. --创建hello.py源文件 # cat hello.py  print 'Hello World!' --执行hello.py [[email protected] study]# chmod a+x hello.py  [[email protected] study]# python hello.py  Hello World! [[email protected] study]# ./hello.py  ./hello.