Python3操作文件系列(二):文件数据读写|二进制数据读写


Python3操作文件系列(一):判断文件|目录是否存在三种方式 

Python3操作文件系列(二):文件数据读写|二进制数据读写

Python3数据文件读取与写入





 

一: 文件数据|二进制数据读写


import os"""Python3的open(file,mode="文件的操作模式")利用该函数可以对文件和二进制文件进行只读,只写,读/写和追加等操作
"""
pathFile = '../dataanalysis/file/fileData.txt'
try:if os.path.exists(pathFile):with open(pathFile, "w") as file:file.write("你好,老杨,欢迎来到Python3操作文件的世界!")print("数据已成功写入 %s 文件!" % pathFile)else:print("文件: %s 不存在,下面将为你创建文件...........")# 创建文件,mode = w 才会创建不存在的文件with open(pathFile, 'w') as f:print("文件创建成功!")
except IOError as err:print("系统错误: ", err)print("-----------------一次写入多行数据--------------------")try:with open(pathFile, 'w') as f:f.writelines(['Python3 这是第一行数据.....\n', 'Mongodb这是第二行数据....'])print("数据已写入")
except IOError as err:print("系统异常: ", err)
print()
print("----------------------------读取文件的内容----------------------")try:with open(pathFile, 'r') as file:content = file.read()print("读到文件内容: %s" % content)print()print("输出内容后,文件指针已经只写末位,故下面无内容输出")print("读起10个字符: ", file.readline(5))
except IOError as err:print("系统异常: ", err)try:with open(pathFile, 'r') as file:print()print("读起10个字符: ", file.readline(6))
except IOError as err:print("系统异常: ", err)try:with open(pathFile, 'r') as file:print()print("读起多行内容(设置只读一行): ", file.readlines(1))print("读起多行内容(默认读取所有的行:): ", file.readlines())
except IOError as err:print("系统异常: ", err)
binaryPath = "../dataanalysis/file/binaryData.cad"try:with open(pathFile, 'a+') as f:f.writelines(['Python3 这是第一行数据.....\n','Mongodb这是第二行数据....','Python3 这是第一行数据.....\n','Python3 这是第一行数据.....\n','Python3 这是第一行数据.....\n'])print("数据已写入")
except IOError as err:print("系统异常: ", err)
try:with open(pathFile, 'r') as file:print()for line in file.readlines(-1):print("读取文件所有行: ", line)
except IOError as err:print("系统异常: ", err)print('-------------------读写二进制文件数据----------------------')
try:with open(binaryPath, 'wb') as file:# 用字符串表示坐标数据,转换为字节流,吸入文件# 注意数据之间用空格进行分隔file.write(bytes(('100000 ' + '10 ' + '20 ' + '29 ' + '22 ' + '30'), 'utf-8'))
except IOError as err:print("系统异常: ", err)
print("读取二进制文件")
try:with open(binaryPath, 'rb') as file:line = file.read().decode("utf-8")lines = line.split(" ")for item in lines:print("存入文件的二进制项为: ", item)except IOError as err:print("系统异常: ", err)

二: 文件数据|二进制数据读写运行效果


D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\file\FileReadOperationByOpen.py 
数据已成功写入 ../dataanalysis/file/fileData.txt 文件!
-----------------一次写入多行数据--------------------
数据已写入

----------------------------读取文件的内容----------------------
读到文件内容: Python3 这是第一行数据.....
Mongodb这是第二行数据....

输出内容后,文件指针已经只写末位,故下面无内容输出
读起10个字符:  

读起10个字符:  Python

读起多行内容(设置只读一行):  ['Python3 这是第一行数据.....\n']
读起多行内容(默认读取所有的行:):  ['Mongodb这是第二行数据....']
数据已写入

读取文件所有行:  Python3 这是第一行数据.....

读取文件所有行:  Mongodb这是第二行数据....Python3 这是第一行数据.....

读取文件所有行:  Mongodb这是第二行数据....Python3 这是第一行数据.....

读取文件所有行:  Python3 这是第一行数据.....

读取文件所有行:  Python3 这是第一行数据.....

-------------------读写二进制文件数据----------------------
读取二进制文件
存入文件的二进制项为:  100000
存入文件的二进制项为:  10
存入文件的二进制项为:  20
存入文件的二进制项为:  29
存入文件的二进制项为:  22
存入文件的二进制项为:  30

Process finished with exit code 0
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/96963.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于腾讯云的OTA远程升级

一、OTA OTA即over the air,是一种远程固件升级技术,它允许在设备已经部署在现场运行时通过网络远程更新其固件或软件。OTA技术有许多优点,比如我们手机系统有个地方做了优化,使用OTA技术我们就不用召回每部手机,直接通过云端就可…

Git 学习笔记 | 版本控制和版本控制工具

Git 学习笔记 | 版本控制和版本控制工具 Git 学习笔记 | 版本控制和版本控制工具什么是版本控制?版本管理工具的特性版本管理工具的发展简史主流的版本控制器本地版本控制集中版本控制分布式版本控制 Git与SVN的主要区别 Git 学习笔记 | 版本控制和版本控制工具 学…

HttpClient实现爬虫开发

网络爬虫是一种高效获取网络信息的方式,而HttpClient是一个强大而灵活的Java库,提供了方便的API和丰富的功能,使其成为开发高效且灵活的网络爬虫的理想选择。本文将分享如何利用HttpClient库进行网络爬虫开发,帮助您更好地理解并实…

【计算机网络】因特网中的电子邮件

文章目录 简单邮件传送协议SMTP邮件访问协议POP3IMAPHTTP 参考资料 电子邮件为异步通信媒介 因特网电子邮件系统 电子邮件系统的三个构件:用户代理、邮件服务器、邮件发送和读取协议 用户代理 User Agent 即UA 电子邮件客户端软件,用户与电子邮件系统的接…

林沛满-TCP之在途字节数

本文整理自:《Wireshark网络分析的艺术 第1版》 作者:林沛满 著 出版时间:2016-02 我一直谨记斯蒂芬霍金的金玉良言—每写一道数学公式就会失去一半读者。不过为了深度分析网络包,有时候是不得不计算的,好在小学一年级…

图形学中一些基本知识的总结与复习

前言 在过完games101课程后仍然觉得自己还有许多地方不懂与遗漏,以此来补充与复习一些其中的知识。 参考:Games101、《Unity Shader 入门精要》 GPU渲染流水线(GPU Rendering Pipeline) ----注:Games101课程中所展示渲染流程与书中有所不同&…

javaWeb网上购物系统的设计与实现

摘 要 随着计算机网络技术的飞速发展和人们生活节奏的不断加快,电子商务技术已经逐渐融入了人们的日常生活当中,网上商城作为电子商务最普遍的一种形式,已被大众逐渐接受。因此开发一个网上商城系统,适合当今形势,更加…

详解FreeRTOS:FreeRTOS任务恢复过程源码分析(进阶篇—4)

本篇博文讲解FreeRTOS中任务恢复过程的源代码,帮助各位更好理解恢复任务的原理和流程。 在详解FreeRTOS:FreeRTOS任务管理函数(基础篇—11)中,讲述了任务恢复函数有两个vTaskResume()和xTaskResumeFromISR(),一个是用在任务中的,一个是用在中断中的,但是基本的处理过程…

智慧空调插座:智控生活好伴侣,节能降耗好帮手

所谓“智能插座”,就是在普通插座上增加Wi-Fi模块,通过手机APP控制单个或整个插座的电源通断,并统计一段时间的用电量。 目前市面上所销售的智能插座,大多具备可连接Wi-Fi网路功能,如此一 来便不需要额外再购买定时控…

评价指标篇——IOU(交并比)

什么是IoU(Intersection over Union) IoU是一种测量在特定数据集中检测相应物体准确度的一个标准。 即是产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率 即它们的交集与并集的比值。最理想情况是完全重叠…

数据中台实战(11)-数据中台的数据安全解决方案

0 微盟删库跑路 除了快、准和省,数据中台须安全,避免“微盟删库跑路”。 2020年2月23日19点,国内最大精准营销服务商微盟出现大面积系统故障,旗下300万商户线上业务全停,商铺后台所有数据被清。始作俑者是一位运维&a…

秒验:可以自定义UI的一键登录服务

一键登录如今成为越来越多移动应用的首选,但千篇一律的登陆界面在引发用户担忧其安全性的同时,也容易让用户在不同APP切换时产生误解。因此,由国内知名移动应用开发服务商MobTech打造的一键登录工具——秒验,通过允许开发者自定义…

C#学习系列相关之多线程(一)----常用多线程方法总结

一、多线程的用途 在介绍多线程的方法之前首先应当知道什么是多线程, 在一个进程内部可以执行多个任务,而这每一个任务我们就可以看成是一个线程。是程序使用CPU的基本单位。进程是拥有资源的基本单位, 线程是CPU调度的基本单位。多线程的作用…

快速掌握批量合并视频

在日常的工作和生活中,我们经常需要对视频进行编辑和处理,而合并视频、添加文案和音频是其中常见的操作。如何快速而简便地完成这些任务呢?今天我们介绍一款强大的视频编辑软件——“固乔智剪软件”,它可以帮助我们轻松实现批量合…

C++深入学习part_1

Linux下编译C程序 安装g命令:sudo apt install g 编译命令:$ g *.cc 或者 *.cpp -o fileName; hellworld 编译程序可以看到: namespace命名空间 首先,命名空间的提出是为了防止变量重名冲突而设置的。 浅浅试一下&#xff1…

深度学习基础之参数量(3)

一般的CNN网络的参数量估计代码 class ResidualBlock(nn.Module):def __init__(self, in_planes, planes, norm_fngroup, stride1):super(ResidualBlock, self).__init__()print(in_planes, planes, norm_fn, stride)self.conv1 nn.Conv2d(in_planes, planes, kernel_size3, …

后端解决跨域(极速版)

header(Access-Control-Allow-Origin: *); header(Access-Control-Allow-Methods:*); 代表接收全部的请求,"POST,GET"//允许访问的方式 指定域,如http://172.20.0.206//宝塔的域名,注意不是:http://wang.jingyi.icu等…

网络和系统操作命令

目录 ping:用于检测网络是否通畅,以及网络时延情况。ipconfig:查看计算机的IP参数配置信息,如IP地址、默认网关、子网掩码等信息。netstat:显示协议统计信息和当前TCP/IP网络连接。tasklist:显示当前运行的…

正点原子嵌入式linux驱动开发——U-boot图形化配置及其原理

经过之前对uboot的学习可以知道:uboot可以通过stm32mp15_trusted_defconfig来配置,或者通过文件stm32mp1.h来配置uboot。还有另外一种配置uboot的方法,就是图形化配置,以前的uboot是不支持图形化配置,只有Linux内核才支…

JMeter工具的介绍,安装

一、本文学习目标 1、能知道JMeter的优缺点 2、能掌握JMeter的安装流程 3、能掌握JMeter线程组的设置 4、能掌握JMeter参数化的使用 5、能掌握JMeter直连数据库操作 6、能掌握JMeter的断言. 二、JMeter简介 (1)Jmeter详细介绍 **JMeter(A…