当前位置: 首页 > news >正文

Python文件操作

目录

一、文件操作介绍

二、文件的打开和关闭

三、文件的读写 

四、文件文件夹相关操作

五、test


一、文件操作介绍

 文件 : python中文件是对象

Liunx 文件 : 一切设备都可以看成是文件

  磁盘文件    管道  网络Socket

文件属性:

  读  写  执行权限

就是把一些存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力

二、文件的打开和关闭

如果想用word编写一份简历,应该有哪些流程呢?

文件打开方法:

  open(name,mode[buf])

  f = open('test.txt', 'w')

文件打开方法:

  with open(‘test.txt’, ‘w’)  as file

close

  # 新建一个文件,文件为:test.txt

  f = open('test.txt', 'w')

   # 关闭这个文件

   f.close() 

1.将写缓存同步到磁盘 ;
2.Linux 系统中每一个进程打开文件的个数是有限的;
3.如果打开文件数到了系统限制, 则会打开失败
"""
open(文件名称, 模式)
open("test.txt" , "r")
with open
with open("test.txt" , "r") as f:
"""# file = open("test3.txt" , "a")
# file.close()file = open("test.txt" , 'r')
contend1 = file.read(5)
print(contend1)
print("--"*30)
contend2 = file.read(5)
print(contend2)file.close()

 

三、文件的读写 

文件读取方式 

read([size]) :读取文件(读取size个字节,默认读取全部)

f = open('test.txt', 'r')

content = f.read(5) # 最多读取5个数据

print(content)

print("-"*30) # 分割线

print(content)

f.close() # 关闭文件,这个可以是个好习惯哦

文件读取方式 

readlines([size]) :读取文件返回每一行所组成的列表

f = open('test.txt', 'r')

content = f.readlines()

print(type(content))

i=1

for temp in content:

  print("%d:%s" % (i, temp))

   i += 1

 f.close()

文件读取方式

  readline 读取一行

  f = open('test.txt', 'r')

  content = f.readline()

  print("1:%s" % content)

  content = f.readline()

  print("2:%s" % content) f.close() 

如果一个文件很大,比如5G,试想应该怎样把文件的数据读取到内存然后进行处理呢?

 文件的写入

  write(str): 将字符串写入文件

  writelines(): 写多行到文件中

文件读取写入文件指针移动过程

 

写文件的过程与存在问题 

 

 

 

Python写入磁盘的时机

  1. 主动调用close 方法, 写缓存同步到磁盘

  2. 写入数据量大于或等于写缓存,写缓存同步到磁盘 

 

"""# 打开文件
file = open("test3.txt", "r")
# 读取10个字节
contend = file.read(10)print(contend)
print("-"*30)
# 读取全部
result = file.read()print(result)
# 关闭
file.close()#打开文件
file = open("test3.txt", "r")
contend = file.readlines()
print(contend)
print("--"*28)
for i  in contend:print(i)file.close()"""file = open("test3.txt", "r")
contend = file.readline()print(contend)
ret = file.readline()
print(ret)file.close()

 

file = open("domo.txt" , "w")
contend = "i love python"file.write(contend)
file.close()

四、文件文件夹相关操作

文件包括: 磁盘(ext2, ext4)文件 , NFS文件系统,

 各种外设(sd卡, USB设备)

Linux 如何管理外设?

python对文件的操作

OS模块

文件重命名

  rename(需要修改的文件名, 新的文件名)

  import os

  os.rename("毕业论文.txt", "毕业论文-最终版.txt")

   

OS模块

删除文件

  remove(待删除的文件名)

  import os

  os.remove("毕业论文.txt")

OS模块

创建文件夹

  mkdir()

  import os

  os.mkdir(“张三”)

 

OS模块

  获取当前目录

    os.getcwd()

  改变默认目录

    os.chdir("../")

  获取目录列表

    os.listdir("./")

  删除文件夹

    os.rmdir("张三")

 

import  os
"""
# os.rename("domo.txt","deep.txt")
os.rename("deep.txt","123.txt")文件重命名操作
文件删除操作
os.remove("test.txt")
创建文件夹
os.mkdir("张三")
"""
path = (os.getcwd())
print(path)

五、test

  • 一、单选题
    1.打开一个已有文件,然后在文件末尾添加信息,正确的打开方式为()。
    A. 'r' B. 'w' C.'a' D. 'w+'
    2.假设文件不存在,如果使用open方法打开文件会报错,那么该文件的打开方式是下列哪种模式?()
    A. 'r' B. 'w' C.'a' D. 'w+'
    3.假设file是文本文件对象,下列选项中,哪个用于读取一行内容?()
    A. file.read() B. file.read(200)
    C.file.readline() D.file.readlines()
    4.下列方法中,用于向文件中写出内容的是()。
    A.open B.write C.close D.read
    5.下列荣方法中,用于获取当前目录的是()。
    A.open B.write C.Getcwd D.read
    二、判断题
    文件打开的默认方式是只读。()打开一个可读写的文件,如果文件存在会被覆盖。()使用write方法写入文件时,数据会追加到文件的末尾。()实际开发中,文件或者文件夹操作都要用到os模块。()read方法只能一次性读取文件中的所有数据。
    三、填空题
    打开文件对文件进行读写,操作完成后应该调用_______方法关闭文件,以释放资源。seek方法用于移动指针到制定位置,该方法中________参数表示要偏移的字节数。使用readlines方法把整个文件中的内容进行一次性读取,返回的是一个__________。os模块中的mkdir方法用于创建__________。在读写文件的过程中,_________方法可以获取当前的读写位置。

1、A
2、A
3、C
4、C
二、对 错 错 对 错
三、close offset 列表 文件夹 tell 

http://www.lryc.cn/news/43855.html

相关文章:

  • 036:cesium加载GPX文件,显示图形
  • 【AI探索】我问了ChatGPT几个终极问题
  • Leetcode 优先队列详解
  • 通过两道一年级数学题反思自己
  • Pytorch :从零搭建一个神经网络
  • 【华为OD机试 2023最新 】 区块链文件转储系统(C++ 100%)
  • 基于springcloud实现分布式架构网上商城演示【项目源码】分享
  • 【Qt】(自制类)适用于QTextCharFormat的字体选择对话框
  • Unity即时战略/塔防项目实战(一)——构造网格建造系统
  • 【ZOJ 1095】Humble Numbers 题解(动态规划)
  • 百科媒体背书,什么媒体的收录可以修改百科?
  • USB鼠标实现——HID 报告的返回(八)
  • DOPE PEG Maleimide,DOPE-PEG-Mal,二油酰磷脂酰乙醇胺PEG马来酰亚胺
  • python-课后作业-2
  • redis 六. list应用场景及底层分析
  • 成语填字接龙隐私政策
  • 导出LKD3588开发板的根文件系统
  • 【统计模型】某地区土壤所含可给态磷回归分析
  • redis 十. 线程基础
  • NQA简介
  • [python]上下文管理contextlib模块与with语句
  • STM32之TIM编码器接口
  • b站第一,Python自动化测试实战详细教学,3天教你学会自动化测试
  • 刷题记录:P8804 [蓝桥杯 2022 国 B] 故障 条件概率
  • 【算法】常用的基础数论
  • 云原生场景下的容器网络隔离技术
  • 用python绘制有向图
  • Spring MongoDB 开发教程(一)—官方原版
  • 数据结构——二叉搜索树
  • 23年5月高项学习笔记3---项目管理概述