当前位置: 首页 > 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 

相关文章:

Python文件操作

目录 一、文件操作介绍 二、文件的打开和关闭 三、文件的读写 四、文件文件夹相关操作 五、test 一、文件操作介绍 文件 : python中文件是对象 Liunx 文件 : 一切设备都可以看成是文件 磁盘文件 管道 网络Socket 文件属性: 读 写 执行权限 就是把一些存储存放起来&…...

036:cesium加载GPX文件,显示图形

第036个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中加载GPX文件, 显示图形。 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共83行)相关API参考:专栏目标示例效果 配置方式 1)查看基础设置:https:/…...

【AI探索】我问了ChatGPT几个终极问题

终于尝试了一把ChatGPT的强大之处,问了一下关心的几个问题: chatGPT现在在思考吗?有没有什么你感兴趣的问题? 你认为AI会对人类产生哪些方面的影响? 你对人类所涉及到的学科有了解吗?你认为在哪些方面与人类…...

Leetcode 优先队列详解

优先队列 优先队列(Priority Queue):一种特殊的队列。在优先队列中,元素被赋予优先级,当访问队列元素时,具有最高优先级的元素最先删除 普通队列详解Leetcode 队列详解 优先队列与普通队列最大的不同点在于…...

通过两道一年级数学题反思自己

背景 做完这两道题我开始反思自己,到底是什么限制了我?是我自己?是曾经教导我的老师?还是我的父母? 是考试吗?还是什么? 提目 1、正方体个数问题 2、相碰可能性 过程 静态思维: …...

Pytorch :从零搭建一个神经网络

文章目录安装依赖从源码编译pytorchCXX_ABI问题数据集归一化Transforms搭建神经网络Components of a neural networknn.Flattennn.Linearnn.Sequentialnn.SoftmaxModel Parameters优化模型参数设置超参数添加优化循环添加 loss function优化过程完整实现模型的保存和加载安装 …...

【华为OD机试 2023最新 】 区块链文件转储系统(C++ 100%)

题目描述 区块链底层存储是一个链式文件系统,由顺序的N个文件组成,每个文件的大小不一,依次为F1,F2,…,Fn。随着时间的推移,所占存储会越来越大。 云平台考虑将区块链按文件转储到廉价的SATA盘,只有连续的区块链文件才能转储到SATA盘上,且转储的文件之和不能超过SATA盘…...

基于springcloud实现分布式架构网上商城演示【项目源码】分享

基于springcloud实现分布式架构网上商城演示摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包…...

【Qt】(自制类)适用于QTextCharFormat的字体选择对话框

先附上github链接:https://github.com/Ls-Jan/Qt_CharFormatDialog 主要是作为QFontDialog的平替/增强,毕竟Qt自带的字体选择器一言难尽(用过的都叹气)。 【运行界面】 【功能】 一目了然,可以选择字体,设置字号,设置…...

Unity即时战略/塔防项目实战(一)——构造网格建造系统

Unity即时战略/塔防项目实战(一)—— 构造网格建造系统 效果展示 Unity RTS游戏网格建造系统实现原理 地形和格子划分,建造系统BuildManager构建 地形最终需要划分成一个一个的小方格,首先定义一下小方格: private…...

【ZOJ 1095】Humble Numbers 题解(动态规划)

一个素数只有2,3,5或7的数被称为谦逊数。序列1、2、3、4、5、6、7、8、9、10、12、14、15、16、18、20、21、24、25、27。。。显示了前20个不起眼的数字。 编写一个程序来查找并打印此序列中的第n个元素。 输入规范 输入由一个或多个测试用例组成。每个…...

百科媒体背书,什么媒体的收录可以修改百科?

传媒如春雨,润物细无声,大家好 大家都知道百科在百度搜索引擎中有很高的权重,排名非常靠前,任何机构,个人,或者企业做网络宣传百科是必不可少的,虽然任何人都可以注册并编辑其内容。但是&#x…...

USB鼠标实现——HID 报告的返回(八)

文章目录HID 报告的返回仓库地址USB 鼠标阅读顺序报告返回HID 报告的返回 仓库地址 仓库地址 USB 鼠标阅读顺序 枚举过程USB鼠标实现——设备描述符(一)USB鼠标实现——设置地址(二)USB鼠标实现——配置描述符集合&#xff08…...

DOPE PEG Maleimide,DOPE-PEG-Mal,二油酰磷脂酰乙醇胺PEG马来酰亚胺

文章关键词:高分子PEG,DOPE,聚乙二醇化修饰试剂基团反应特点: DOPE PEG Maleimide是一种由 DOPE 和马来酰亚胺基团组成的 PEG 化合物。基础产品数据: CAS号:N/A 中文名:1,2-二油酰-SN-甘油-3-磷…...

python-课后作业-2

1.Python 3.x的range()函数返回一个:可迭代的序列对象 注意: Python 3.x的range()函数返回一个可迭代的序列对象,其中包含指定范围内的整数。range()函数的语法如下: range([start], stop[, step]) 其中,start表示序…...

redis 六. list应用场景及底层分析

List 类型一. 简单命令示例二. java 操作示例三. 使用场景四. 底层分析一. 简单命令示例 1.首先简单说明: List是一个双端链表的结构,内容是2的32次方减1个元素,大概40多亿,主要功能有push/pop等,一般用在栈,队列,消息队列等场景 2.简单命令 //1.向列表左边添加元素 LPUSH ke…...

成语填字接龙隐私政策

1. 适用范围 (a) 在您注册本应用帐号时,您根据本应用要求提供的个人注册信息; (b) 在您使用本应用网络服务,或访问本应用平台网页时,本应用自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览…...

导出LKD3588开发板的根文件系统

序:将RK3588上的整个根文件系统的文件通过ssh拷贝到PC系统(虚拟机) 工具:RK3588上的ubuntu系统需要安装:ssh, rsync。 PC电脑(虚拟机)上安装:ssh, rsync。 安装ssh 和rsync不做介绍,百度里面全是,也很简单需要设置开发板root权限的密码,因为后面同步文件的时候会用到…...

【统计模型】某地区土壤所含可给态磷回归分析

目录 某地区土壤所含可给态磷回归分析 一、研究目的 二、数据来源和相关说明 三、描述性分析 3.1 样本描述 3.2 数据可视化 四、数据建模 4.1 回归模型A 4.2 回归模型B 4.3 回归模型B模型诊断 4.4 回归模型C 五、结论及建议 5.1 结论 5.2 建议 六、代码 某地区土…...

redis 十. 线程基础

目录一. redis 基础复习与了解redis6二. redis 线程问题总结一. redis 基础复习与了解redis6 redis官网, redis中文网站, redis命令参考网站此处以redis6.0.8或以上版本为例(查看自己redis版本命令"redis- server -v")按照redis6以上版本测试使用时,redis.conf下需要…...

NQA简介

NQA简介定义目的NQA原理描述使用DHCP进行测试DNS测试NQA的联动机制NQA的应用场景定义 网络质量分析NQA(Network Quality Analysis)是一种实时的网络性能侦探和统计技术,可以对响应时间、网络抖动、丢包率等网络信息进行统计。NQA能够实时监视…...

[python]上下文管理contextlib模块与with语句

文章目录with语句自定义对象支持withcontextlib模块closing自动关闭suppress回避错误ExitStack清理Python 中的 with 语句用于清理工作,封装了 try…except…finally编码范式,提高了易用性。with语句 with语句有助于简化资源管理: # 离开作…...

STM32之TIM编码器接口

编码器简介: 例子讲解:正交编码器有两个输出,一个A相,一个B相,AB接口输出正交信号。然后接入STM32的定时器的编码器接口,编码器接口自动控制定时器时基单元中的CNT计数器进行自增或自减,比如初始…...

b站第一,Python自动化测试实战详细教学,3天教你学会自动化测试

目录 简介 Python自动化测试概述 Python自动化测试目标 Python自动化测试流程 1. 测试计划和设计 2. 测试脚本开发 3. 测试执行和管理 4. 测试维护和优化 Python自动化测试最佳实践 Python自动化测试工具和框架 结论 简介 自动化测试是软件开发过程中一个必不可少的…...

刷题记录:P8804 [蓝桥杯 2022 国 B] 故障 条件概率

传送门:洛谷 题目描述: 题目较长,此处省略 输入: 3 5 30 20 50 0 50 33 25 0 30 0 35 0 0 0 0 0 25 60 1 3 输出: 2 56.89 1 43.11 3 0.00读完题目,我们会发现其实题目给了我们两个事件,并且这两个事件是相互关联的.因此不难想到使用条件概率 我们将故障原因看做事件AAA,结合…...

【算法】常用的基础数论

作者:指针不指南吗 专栏:算法篇 🐾或许会很慢,但是不可以停下🐾 文章目录1.GCD&LCM2.判断素数(质数)3.分解质因子1.GCD&LCM 最大公约数&最小共倍数 欧几里得算法——高效 //最大公约数 int gcd(int x,i…...

云原生场景下的容器网络隔离技术

云原生场景下的容器网络隔离技术 一、研究背景 随着云计算时代的到来,尤其是容器化技术的飞速发展,云原生作为云计算的未来阶段,其安全势必成为云安全的主要战场。从目前的云原生环境来看,云原生网络安全问题层出不穷&#xff0…...

用python绘制有向图

目录 添加边权重的有向图思路介绍代码实现效果图设置不同的样式节点和边的有向图思路介绍代码实现效果图下面的Python代码用于绘制有向图,其中使用了 networkx和 matplotlib.pyplot等库。 添加边权重的有向图 思路介绍 首先,创建了一个空的有向图像对象G,并添加了4个节点…...

Spring MongoDB 开发教程(一)—官方原版

MongoDB支持包含一系列功能:Spring配置支持基于Java的configuration类或Mongo驱动程序实例和副本集的XML命名空间。MongoTemplate帮助类,在执行常见的Mongo操作时提高生产力。包括文档和POJO之间的集成对象映射。将异常转换为Spring的可移植数据访问异常…...

数据结构——二叉搜索树

一、二叉搜索树概念 二叉搜索树又叫二叉排序树,它或是空树,或是具有以下性质的二叉树: (1)若它的左子树不为空,则左子树上的所有节点的值都小于根节点的值; (2)若它的…...

网站运营者网址/推广链接点击器

属性/样式初始化【转】 一、PP_AttrProp类 1、类功能说明,代表了一个相同类型的属性/样式集合 PP_AttrProp captures the complete set of XML and CSS Attributes/Properties for a piece of the document. These are generally created by the file-reade…...

河南省人民政府门户网站/优化网站标题

1)获取当前日期 首先近N个月,是以当前执行时间为基期的,所以先弄清楚在oracle中如何获取当前日期。 select sysdate from dual 执行了这条语句后,可以看到返回了一个当前日期 注意sysdate不是一个函数,所以后面不要…...

海口网站建设维护/山西搜索引擎优化

需求 求出 当前天, 与指定日期之间相差的天数, 指定日期一定在 当前天之前即 当前天为 01-23 , 指定日期应该为 01-22 解决方案 使用hutools工具包中提供的计算两个日期之间相差天数的方法 betweenDay() 三个参数: betweenDay(Date,Date,Boolean) // 使用方式// cn.hutool.c…...

长沙建设工程造价网站/网站优化排名易下拉排名

做微信开发,鉴于微信POST的消息是XML数据包,通过SimpleXMLElement Object获取的数据不好操作,需要转化为普通数组。网上找了很多方法都不理想,发现通过json_decode和json_encode可以转化,遂分享给大家。$postStr 134…...

wordpress手机博客主题/2023年6月份疫情严重吗

文章目录一、Ubuntu软件商店二、apt命令安装三、snap命令安装四、dpkg命令安装deb包五、源码安装一、Ubuntu软件商店 我们可以直接打开Ubuntu自带的软件商店,进行搜索下载安装。 对于后缀为deb的安装包,我们也可以在图形界面双击打开,会自动…...

专业网站建设制作公司/宁波seo入门教程

启动程序报端口占用(实际并没有启动占用端口的程序) 打开cmd查找占用端口的进程能查到,但又无法杀掉(命令和任务管理器都杀不掉),用了PCHunter(xuetr)结束进程后还会刷新还会重新出现…...