读和写文件

open()将会返回一个file对象,基本语法如下:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

mode参数的定义可以看下面这张表

模式 r r+ w w+ a a+
+ +   +   +
  + + +   +
创建     + + + +
覆盖     + +    
指针在开头 + + + +    
指针再末尾         + +

举几个例子:


#读取文件
f1 = open("/Users/ace/PycharmProjects/pythonSt/a.txt","r")
f1.readlines 读取多行
f1.readline 读取单行
for x in f1:print(f1)
  • file: 必需,文件路径(相对或者绝对路径)。
  • mode: 可选,文件打开模式
  • buffering: 设置缓冲
  • encoding: 一般使用utf8
  • errors: 报错级别
  • newline: 区分换行符
  • closefd: 传入的file参数类型
  • opener:

f.seek() 类似java中的RandomAccessFile 移动指针位置

f.tell() 方法, 来确定 文件流的位置

pickle 模块

类似java中的对象流,把对象写入文件中

完整例子

import pickle
data1 = {'a': [1, 2.0, 3, 4+6j],'b': ('string', u'Unicode string'),'c': None}
output = open('data.pkl', 'wb')
pickle.dump(data1,output)  //把对象写入文件中
output.close()
intput = open('data.pkl','rb')
print(pickle.load(intput))  //把对象从文件中读取出来

==================================华丽的分割线==========================================

下面这个例子说明了异常中的所有关键字

for x in [1,2,3,4,"12fdsfds"]:try:int(x)except ValueError:print("发生错误")except (NameError,RuntimeError,TypeError):print("其他错误")except:passelse://没有发生异常时候执行print("no exption")finally://无论如何都会执行。和java类似print("all")
with open("myfile.txt") as f:for line in f:print(line)
with 语句使得文件之类的对象可以 确保总能及时准确地进行清理。
语句执行后,文件 f 总会被关闭,即使是在处理文件中的数据时出错也一样。其它对象是否提供了预定义的清理行为要查看它们的文档。

Java工程师学快速Python(4)----- I/O与异常处理相关推荐

  1. Java工程师学快速Python(1)----- 数据类型和运算符

    由于本人已经java开发,所以这是一个快速学习python的系列文章,只会突显一些java与python不同的地方 --------------------- Python允许你同时为多个变量赋值.例 ...

  2. java工程师学python爬虫_Python 爬取 11 万 Java 程序员信息竟有这些重大发现!

    原标题:Python 爬取 11 万 Java 程序员信息竟有这些重大发现! 一提到程序猿,我们的脑子里就会出现这样的画面: 或者这样的画面: 心头萦绕的字眼是:秃头.猝死.眼镜.黑白 T 恤.钢铁直 ...

  3. python和java先学哪个-Python和Java,哪个容易学呢?

    Java是具有悠久历史的老牌开发语言,Python是如今人工智能时代的首选语言,无论是Java还是Python都相当强大,这两门语言有很多的相似之处,但是也有很多的不同,难免会拿来比较.今天千锋小编就 ...

  4. python跟java-Python和Java该学哪个?还在纠结的你看过来呀~

    Java还是Python这确实是个难题. 如果问Java程序员一定会告诉你先学Java,如果问Python程序员一定会告诉你先学Python. 早在2017年Python就以荣登编程语言首位,如今它已 ...

  5. python有必要学吗-Python这么火,要不要学?听听华为工程师怎么说...

    编程语言发展得非常之快,后起之秀中Python显然最为耀眼.简明优雅.易于开发,"人生苦短,我用Python"并非一句戏言,Python成为许多工程师们心中"最美的语言& ...

  6. JAVA工程师必学技能,进阶涨薪的推进器!这份实战教程请收下

    Netty 作为互联网中间件的基石,是 JAVA 工程师进阶为高级程序员必备的能力之一.也是目前是互联网中间件领域使用最广泛最核心的网络通信框架. Netty是一个高性能.异步事件驱动的NIO框架,它 ...

  7. python vs java 搞笑视频_Python和Java该学哪个?别纠结了700集视频合集,限时分享...

    Java还是Python这确实是个难题.如果问Java程序员一定会告诉你先学Java,如果问Python程序员一定会告诉你先学python.今天小编来给你分析一下.你到底适合学哪个? 本文内容要点: ...

  8. python和java学哪个好-Python和Java该学哪个?还在纠结的你看过来呀~

    Java还是Python这确实是个难题. 如果问Java程序员一定会告诉你先学Java,如果问Python程序员一定会告诉你先学Python. 早在2017年Python就以荣登编程语言首位,如今它已 ...

  9. 学完python再学Java顺利吗,学完python再学Java要多久

    这篇文章主要介绍了学完python再学C++会不会轻松一点,具有一定借鉴价值,需要的朋友可以参考下.希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下. 1.学编程先学python,然后 ...

最新文章

  1. easyui tree复选框是否打钩状态_实战PyQt5: 010-复选框控件QCheckBox
  2. ccxprocess启动项可以禁用么_Mac怎么禁用Adobe无用自启项?
  3. STM32之通用定时器编码器模式
  4. Oracle Real Application Testing diagram
  5. php larvel https,laravel 解决强制跳转 https的问题
  6. SRM 567 div2
  7. 纯新手DSP编程--5.21--CCS高级工具的使用
  8. mac 下设置 sublime text2 的命令行快捷方式 subl
  9. Aspose.Cells生成Excel图表
  10. html5 drag移动位置,HTML5拖拽功能drag
  11. SaaS公司投资分析时,MRR比ARR指标更有用 | 投资人说
  12. 优优聚:美团,又要抢抖音的短视频生意
  13. 如何去除 录像开始和结束时 的噔噔噔噔声音
  14. 记一次CTF过程(Writeup)
  15. 双目立体视觉(3)- ZED2 ROS Melodic 发布RGB图像及深度信息
  16. show和shown区别
  17. 线段树模板(建树+更新)
  18. 设计模式学习之锦囊妙计定乾坤
  19. 广州的房价是我遥不可及的梦,今天就用Python来做一个房价预测小工具。
  20. 奥特斯出席2018重庆市市长国际经济顾问团第十三届年会

热门文章

  1. 景安网络快云mysql版本_景安快云数据库使用教程
  2. python画美国队长盾牌——turtle库
  3. 2022年安全员-B证考试题库模拟考试平台操作
  4. 下载的时候提示:“写入到文件时产生错误(请用磁盘检查工具检查修复)”的解决办法
  5. Win11电脑外接显卡后蓝屏?Win11显卡坞一打开就蓝屏的解决方法
  6. mysql数据库名称中包含短横线的对应方式
  7. Science:前额叶皮层在哺乳动物上的解剖学异同
  8. Python学习之学校教学( 已知复数,请写出它的模、实部、虚部及共轭复数)
  9. veritas msi_使用适用于AIX 5.3和6.1的Veritas Volume Manager(VxVM)V5管理逻辑卷
  10. 如何修改本机host地址