1.文件

2.异常

1.文件的输入输出
#1.打开文件 open 函数
open(file,[option])
#file 是要打开的文件
#option是可选择的参数,常见有 mode 等

#2.文件的打开模式
r 只读模式,文件不存在时会报错。
w 写入模式,文件存在会清空之前的内容,文件不存在则会新建文件。
x 写入模式,文件存在会报错,文件不存在则会新建文件。
a 追加写入模式,不清空之前的文件,直接将写入的内容添加到后面。
b 以二进制模式读写文件,wb,rb,ab。
+ 可读写模式,r+,w+,x+,a+,这几种模式还遵循了r,w,x,a的基本原则。

#3.文件的读取
f.read(size)  #读取文件的内容,将文件的内容以字符串形式返回。
'''size是可选的数值,指定字符串长度,如果没有指定size或者指定为负数,就会读取并返回整个文件。当文件大小为当前机器内存两倍时就会产生问题,反之就尽可能大的size读取和返回数据,如果到了文件末尾,会返回空字符串。
'''

f.readline() #从文件中读取单独一行。
'''字符串结尾会自动加上一个换行符\n,只有当文件最后没有以换行符结尾时,这一操作才会被忽略,这样返回值就不会有混淆。如果返回空字符串,表示到达率文件末尾,如果是空行,就会描述为\n,一个只有换行符的字符串。
'''

f.readlines() #一次读取所有,返回一个列表,列表的元素为文件行的内容。
'''可以通过列表索引的方式将文件的每一行的内容输出。
可以通过for循环迭代输出每一行的信息。
'''

#4.文件的写入
f.write() #将要写入的内容以字符串的形式通过write方法写入文件中。
f.writelines()  #括号里必须是由字符串元素组成的序列。

#5.保存和关闭
f.flush()
#在读写模式下,当写完的数据想要读取出来时,要先缓存区的内容保存到文件当中。

f.close()
#关闭文件。对一个已经关闭的文件进行操作会报错。


#6.光标位置
f.tell() #返回光标在文件中的位置。
f.seek(offset,from) #常用 f.seek(0) 返回起始位置
#在文件中移动文件指针,从from(0代表起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节。
# 常用 f.seek(0,0) 返回起始位置。 其他了解一下


#7.查看文件信息
closed #查看文件是否已经关闭,返回布尔值。
mode #返回文件打开模式。
name #返回文件名。

#8.with 形式打开文件,里面的语句执行完后会自动关闭文件
with open('文件名') as f:
   f.read()
2.异常语法
try:
   suite1       #测试语句块
except exception1:
   suite2       #如果测试语句suite1中发生exception1异常时执行
except (exception2,exception3):
   suite3     #如果测试语句suite1中发生元组中任意异常时执行
except exception4 as reason:    #as把异常的原因赋值给reason
   suite4       #如果测试语句suite1发生exception4的异常时执行
except:
   suite5     #如果测试语句suite1发生异常在所列出的异常之外时执行
else:
   suite5     #如果测试语句块suite1中没有发生异常时执行
finally:
   suit6       #不管测试语句suite1中又没有发生异常都会执行
   
'''
注意:中间的except,else,finally都是可选的,但至少有一个,不然try就没有意义了,根据实际中的需求来选择。
所有错误类型都继承自BaseException
https://docs.python.org/3/library/exceptions.html#exception-hierarchy
'''

#注意:如果抛出父类异常,在子类不会再获取,如下:
try:
   fun()
except Exception as e:
   raise Exception
except ImportError as e:
   raise ImportError
finally:
   pass
   
'''
在上面的例子中,下面的ImportError就不会被抛出,应为ImportError继承Exception,但是可以把Exception放在后面是可以的
e可以得到系统给出的报错信息
'''

assert #断言
'''
测试表示式,其返回值为假,就会触发异常
'''

assert 1==1 #没有返回值
assert 1==2 #返回AssertionError
#1.定义一个函数,读取 reform.txt 的内容。
# 把文件reform.txt中的名人名言,改成“某某说:......”的形式,保存到另一个文件中。
'例:雨果说:大胆是取得进步所付出的代价。' #reform.txt
'''
大胆点,伟大无比的力量自会来帮助你。——比锡耳王 大胆是取得进步所付出的代价。——雨果 不怕的人前面才有路。——有岛武信 世界是属于勇敢者的。——哥伦布 走自己的路,叫别人去说吧。——但丁 死是每个人都能做到的,拿出勇气活下去才是勇敢。——罗教·柯迪 人的一生中可能犯的错误,就是经常担心犯错误。——哈伯德 没有比害怕本身更害怕的了。——培根 你怕狼,就别到树林里去。——列宁 人生自古谁无死,留取丹心照汗青。——文天祥
''' fr = open('reform.txt','r')
fw = open('new.txt','w') li = fr.readlines() for line in li[::2]:
line = line.replace('\n','说:')
li_new=line.split('——')
s = '%s%s\n\n'%(li_new[1],li_new[0])
fw.write(s)
print(s)
fw.flush()
fw.close()
fr.close() #2. 捕捉用户输入时异常,确保程序正常执行 import random def test():
n = random.randint(1,10)
c = 0
while c<3:
a = input('您还有 %d 次机会,请输入1-10 整数:'%(3-c))
try:
a = int(a)
if 1<=a<=10:
if a==n:
print('猜对啦')
break
elif a < n:
print('小啦')
else:
print('大啦')
else:
print('输入错误!!!')
c += 1
except ValueError:
print('错误!输入不是1-10整数') test()

  

Python文件操作,异常语法的更多相关文章

  1. Python基础篇【第2篇】: Python文件操作

    Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...

  2. Python之路Python文件操作

    Python之路Python文件操作 一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r&qu ...

  3. 第十二章 Python文件操作【转】

    12.1 open() open()函数作用是打开文件,返回一个文件对象. 用法格式:open(name[, mode[, buffering[,encoding]]]) -> file obj ...

  4. 第九章 Python文件操作

    前一阵子写类相关的内容,把老猿写得心都累了,本来准备继续介绍一些类相关的知识的,如闭包.装饰器.描述符.枚举类.异常等,现在实在不想继续,以后再开章节吧.本章弄点开胃的小菜提提神,介绍Python中文 ...

  5. [Python学习笔记][第七章Python文件操作]

    2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...

  6. Python文件操作与函数目录

    文件操作 python文件操作 函数 Python函数学习——初步认识 Python函数学习——作用域与嵌套函数 Python函数学习——匿名函数 python内置函数 Python函数学习——递归 ...

  7. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

  8. day8.python文件操作

    打开和关闭文件 open函数 用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. file = open(file_name [, access_ ...

  9. 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()

    嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...

  10. python 文件操作 r w a

    python基础-文件操作   一.文件操作 对文件操作的流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件       打开文件时,需要指定文件路径和以何等方式打开文件, ...

随机推荐

  1. MXF文件结构浅析

    MXF是英文Material eXchange Format(素材交换格式)的缩语.MXF是SMPTE(美国电影与电视工程师学会)组织定义的一种专业音视频媒体文件格式.MXF主要应用于影视行业媒体制作 ...

  2. C语言学习笔记--数组参数和指针参数

    1. 数组参数退化为指针的意义 (1)C 语言中只会以值拷贝的方式传递参数,当向函数传递数组时,将整个数组拷贝一份传入函数导致执行效率低下,C 语言以高效作是最初的设计目标,所以这种方法是不可取的. ...

  3. 如何实现1080P延迟低于500ms的实时超清直播传输技术<转>

    转载地址:http://www.yunweipai.com/archives/9037.html 最近由于公司业务关系,需要一个在公网上能实时互动超清视频的架构和技术方案.众所周知,视频直播用 CDN ...

  4. LinkedHashMap和HashMap的区别

    一.问题描述: 前几天写webservices接口,需要同步人力资源,涉及到添加顺序:主账号需要添加在次账号之前,直接上级需要添加在下级之前.解析xml之后直接封装在HashMap中,导致取对象时顺序 ...

  5. HTML布局,插件的调用方法

  6. WebSocket详解(一):初步认识WebSocket技术

    1.什么是Socket?什么是WebSocket? 对于第1次听说WebSocket技术的人来说,两者有什么区别?websocket是仅仅将socket的概念移植到浏览器中的实现吗? 我们知道,在网络 ...

  7. 32-回文字符串(dp)

    http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=37 回文字符串 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描 ...

  8. Data Mining: SSE,MSE,RMSE,R-square指标讲解

    转载自:http://blog.csdn.net/l18930738887/article/details/50629409 SSE(和方差.误差平方和):The sum of squares due ...

  9. html 5 data-* (dataset) 属性和 jquery data方法比较

    一些文章在介绍html 5 data-* (dataset)属性时,会提到jquery的data方法,认为data方法能够很好的利用html 5的这个特性.但实际上,二者的兼容性是很差的.下面给出一段 ...

  10. 在windows中安装OpenSSH,无密码登录,永远不断线

    到这里下载最新安装包:https://github.com/PowerShell/Win32-OpenSSH/releases下载下来解压,然后用管理员打开服务器自带的PowerShell,运行下列命 ...