码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础--文件操作

时间:2018-11-25 13:22:09      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:保存数据   list   使用   取整   write   class   line   一个   基础   

  文件操作通常用来存储程序结果,以便下次可以直接使用,不必要重新运行一遍。文件操作最基本的三步:1.打开文件或者新建文件  2. 读或者写  3 关闭文件流保存数据。

Python 访问模式如下:

技术分享图片

打开、关闭文件

f = open("dirTest.py","r")
print("打开的文件信息:%s"%f)
f.close()
print("文件名:%s,访问模式:%s, 是否关闭:%s"%(f.name,f.mode,f.closed))

输出:
    打开的文件信息:<_io.TextIOWrapper name=dirTest.py mode=r encoding=UTF-8>
    文件名:dirTest.py,访问模式:r, 是否关闭:True

文件读与写

(1)写数据。使用write()可以将数据写入指定文件。

f = open(test.txt,"w")
f.write("正在练习python语法")
f.close()

文件内容:
    正在练习python语法

(2)读数据有三种:

  •  read(size)从指定文件读取size个字节数据,如果没有指定将读取整个文件数据
  • readlines()将对文件逐行读取整个文件,返回的是一个list,其中的每个元素代表文件中的一行数据
  • readline()从文件中读取一行数据
f = open("test.txt",r)
read = f.read()
print("read:%s"%read)
f.seek(0,0)
lines = f.readlines()
print("readlines:%s"%lines)
f.seek(0,0)
line = f.readline()
print("readline:%s"%line)
f.close()

输出:  
read:1正在练习python语法
2正在练习python语法
3正在练习python语法
4正在练习python语法
5正在练习python语法
6正在练习python语法
readlines:[1正在练习python语法\n, 2正在练习python语法\n, 3正在练习python语法\n, 4正在练习python语法\n, 5正在练习python语法\n, 6正在练习python语法\n]
readline:1正在练习python语法

  如果我们在读取一个未知文件时,不知道文件会有多大,如果一次全部加载可能导致机器的内存不够用,这时我们可以每次取一部分数据多次完成即可。下面的例子是一个复制文件的例子:

fileName = input("请输入要复制的文件名:")
position =fileName.rfind(.)
newFileName = fileName[:position] + 副本 + fileName[position:]
#打开文件
oldFile = open(fileName,r)
#新建一个文件
newFile = open(newFileName,w)
#写数据
while True:
   content = oldFile.read(1024)
   if len(content) == 0:
       break
   newFile.write(content)

#关闭文件
oldFile.close()
newFile.close()

输出:
    请输入要复制的文件名:test.txt
    1正在练习python语法
    2正在练习python语法
    3正在练习python语法
    4正在练习python语法
    5正在练习python语法
    6正在练习python语法

文件位置信息

  • tell() 返回文件指针当前位置
  • seek(offset,from)

  offset:偏移量

  from :方向,0:表示文件开头,1:表示当前位置,2:表示文件末尾

 

Python基础--文件操作

标签:保存数据   list   使用   取整   write   class   line   一个   基础   

原文地址:https://www.cnblogs.com/jsnhdream/p/10014959.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!