Python3——文件与异常

                                Python3——文件与异常

 

目录

Python3——文件与异常

文件

(1)、打开文件open()

(2)、写文件write()

(3)、从文件读取数据

异常(防止程序崩溃)

(1)、try-except代码块

(2)、try-except-else代码块       

常用文件方法


  • 文件

1)、打开文件open()

读文件时,一般只有一个参数,表示文件名(相对路径和绝对路径都可以)

写文件时,一般有两个参数,第一个表示文件名,第二个表示写入模式('r’ —— 读取模式, ‘w’——写入模式, ‘a’——附加模式, ‘r+’——读取和写入)。

with open("./123.txt") as m_file:

2)、写文件write()

m_file.write(“I love Python”)

3)、从文件读取数据

contents = m_file.read()  #读取文件所有内容

for line in m_file: #读取一行

 

  • 异常(防止程序崩溃)

Python使用被称为异常的特殊对象来管理程序执行期间发生的错误。每当发生让Python不知所措的错误时,它都会创建一个异常对象。如果你编写了处理该异常的代码,程序将继续运行;如果你未对异常进行处理,程序将停止,并显示一个traceback,其中包含有关异常的报告。

1)、try-except代码块

try:with open("./456.txt", 'r') as m_file:print("File open success!")except FileNotFoundError:print("File open fail!")	

2)、try-except-else代码块       

"""
123.txt:
I love Python
I love Python
I love Python
I love Python
"""try:with open("./123.txt", 'r') as m_file:contens = m_file.read()print("File open success!")except FileNotFoundError:print("File open fail!")	else:words = contens.split()count = len(words)print(str(count)) # 12
  • 常用文件方法

常用文件方法描述
file.open(path, mode)打开文件
file.seek(off, whence=0)移动到 file 中的某个位置,从 whence 的 off 字节的偏移量处( 0 表示文件的开始, 1 表示当前位置, 2 表示文件末尾)
file.tell()返回 file 内的当前位置
file.truncate(size=file.tell())以最多 size 字节来截断 file,默认为当前文件位置
file.write(str)向 file 中写入字符串 str
file.writelines(seq)将字符串 seq 写入 file 中; seq 应该是一个可迭代产生的字符串;在 Python 2.2 版本之前,它仅仅是一个字符串列表
file.closed如果 file 关闭了则为 True; 否则为 False
file.encoding这个文件使用的编码,当向 file 中写入 Unicode 字符串时,使用 file.encoding 将它们转换为字节字符串;值 None 表示应该使用系统默认的编码方式来转换 Unicode 字符串
file.mode打开 file 的访问模式
file.read(size=-1)读取文件中的 size 个字节,如果 size 未给出或为负数,则读取所有剩余的字节,作为一个字符串返回
file.readline(size=-1)从 file 中读取并返回一行(包括行结束字符),为一整行或 size 字符的最大值
file.flush()冲刷 file 的内部缓冲器

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

相关文章

PHP页面显示中文字符出现乱码

【出现问题】 php页面显示中文字符出现乱码 【解决方法】 在php页面的代码前插入一行代码即可 header("Content-Type: text/html;charsetutf-8"); 转载于:https://www.cnblogs.com/wangyang0210/p/9187403.html

C#多线程JOIN方法初探

[说明:刚接触多线程时,弄不明白Join()的作用,查阅了三本书,都不明不白。后来经过自己的一番试验,终于弄清了Join()的本质。大家看看我这种写法是否易懂,是否真的写出了Join()的本质,多提宝贵意见…

STM32F0单片机快速入门八 聊聊 Coolie DMA

1.苦力 DMA世上本没有路,走的人多了,便成了路。世上本没有 DMA,需要搬运的数据多了,便有了 DMA。大多数同学应该没有在项目中用过这个东西,因为一般情况下也真不需要这个东西。在早期的单片机中也不存在DMA模块。再加上…

Python3——网络编程基础

Python3——网络编程基础 基础知识参考: https://blog.csdn.net/wqx521/article/details/51037048 https://blog.csdn.net/wqx521/article/details/51056649 https://blog.csdn.net/wqx521/article/details/51056713 https://blog.csdn.net/wqx521/article/deta…

Python学习之==第三方模块的安装、模块导入

一、模块&包 1、模块 模块实质上就是一个Python文件,它是用来组织代码的。意思就是把Python代码写在里面,文件名就是模块的名称。例如:random.py,random就是模块的名称。 2、包 包又叫pageage,本质就是一个文件夹&…

【注册机】Zillions of Games v2.0.1p 注册机

下载地址:http://keygens.nl/crack/87061/转载于:https://www.cnblogs.com/boringlamb/archive/2010/02/24/1672404.html

操作系统中抢占式和非抢占式内核的区别

编排 | strongerHuang微信公众号 | 嵌入式专栏操作系统分为抢占式内核和非抢占式内核,通常RTOS都是抢占式内核。下面就来讲讲抢占式内核和非抢占式内核的内容。非抢占式内核非抢占式内核要求每个任务(线程)都做一些事情来明确放弃对 CPU 的控…

Python3——简单的TCP实例

Python3网络编程——简单的TCP实例 服务器:创建套接字——绑定服务器地址——监听连接——接受连接——数据接收/发送 客户端:创建套接字——连接服务器地址——数据接收/发送 """ server.py encode()/decode() """ fro…

位图索引,数据库索引浅浅的学习

摘自http://www.cnblogs.com/LBSer/p/3322630.html 位图(BitMap)索引 前段时间听同事分享,偶尔讲起Oracle数据库的位图索引,顿时大感兴趣。说来惭愧,在这之前对位图索引一无所知,因此趁此机会写篇博文介绍下…

UDP协议 sendto 和 recvfrom 浅析与示例

图片/在思考的樱木花道UDP(user datagram protocol)用户数据报协议,属于传输层。UDP是面向非连接的协议,它不与对方建立连接,而是直接把数据报发给对方。UDP无需建立类如三次握手的连接,使得通信效率很高。…

2010软考软件设计师冲刺精选【专家压轴模拟•下】

2010软考软件设计师冲刺精选【专家压轴模拟•下】 自测简介: 为迎战2010年软考,51CTO特邀请软考专家为网友出了一系列模拟冲刺题。其中包括网络规划设计师、网络工程师、网络管理员、软件设计师、程序员等。本套技术自测是软考软件设计师冲刺模拟题…

劝你要看一些有门槛的机会

最近发了很多招聘信息,招聘的岗位算不错的,但是投简历的人不多。我想起来刚开始工作那几年,工资虽然很低,但是也不怎么想鞠躬投简历,毕竟那个时候把面子这个事情看的比什么都重要。自己觉得自己有才,不过后…

Python3——简单的UDP实例

Python3——简单的UDP实例 服务器:创建套接字——绑定套接字——数据接收/发送 客户端:创建套接字——数据接收/发送 """ server.py encode()/decode() """ from socket import * from time import ctimeHOST PORT 11…

[状压dp]洛谷 P2157 学校食堂

题目描述 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭。学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴。当然,不同的人口味也不一定相同,但每个人的口味都可以用一个非负整数表示。 由…

怎么得到自增列的下一个会插入的id

代码 1declareTable_namevarchar(60) 2setTable_namePay_inputpay; 3Selectso.name Table_name, --表名字4sc.name Iden_Column_name, --自增字段名字5ident_current(so.name) curr_value, --自增字段当前值6ident_incr(so.name) incr_value,…

ESP32,使用gitee搭建 ESP-IDF 开发框架

ESP32便宜,开发方便,非常适合初学者用来学习,之前我自己写的开发环境可能不再适合,推荐下面这篇文章。关于如何搭建ESP32的开发环境,乐鑫官方给出了很详细的教程和文档,基本上跟着官方教程来操作&#xff0…

jQuery的ajax技术

编辑本博客 ajax异步的JavaScript和html load() 从服务器加载数据,并把返回的数据放入备选元素中。这里加载回来的数据可以只有一个p标签,无需head元素等 $("selector").load(url,data,callback) url:必选,规定加载的ur…

Python3——FTP(文件传输协议)

Python3——FTP(文件传输协议) 工作流程: 客户端连接远程主机的FTP服务器;客户端输入用户名密码;客户端进行各种文件传输和信息查询;客户端从FTP服务器退出。ftplib.FTP常用方法 login(user,passwd)登录 …

Linux设备树的传递以及kernel中对设备树的解析

当U-Boot将设备树加载到内存指定位置后,ARM内核的SoC以通用寄存器r2来传递dtb在内存中的地址。kernel获取到该地址后对dtb文件做进一步的处理。#设备树的传递当使用bootm加载kernel镜像时(bootz是对bootm的一种封装以及功能扩展,实质一样&…

切片基础slice

定义:slice表示一个拥有相同类型元素的可变长度的序列 slice有三个属性:指针,长度,容量 指针指向第一个可以从slice中访问的元素,这个元素并不一定是数组的第一个元素 注意: 1.一个底层数组可以对应多个sli…