python中的open()函数用于打开一个文件,创建file对象,相关方法才可以调用它进行读写

语法:open(name,[,model[,buffering]])

模式描述

r

以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

rb

以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。

r+

打开一个文件用于读写。文件指针将会放在文件的开头。

rb+

以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。

w

打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。

wb

以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。

w+

打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。

wb+

以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。

a

打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

ab

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

a+

打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

ab+

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

1.读文件

如果文件打开成功,则显示打开文件ex15_sample.txt的内容

最后一步调用close()方法关闭文件,使用文件完毕后必须关闭文件。因为文件对象会占用操作系统资源,且操作系统同时打开文件数量有限

由于文件读写会产生IO error ,如果报错会导致后面的close()无法执行,所以为了保证是否出错都能正确关闭文件,可以使用try-finally 来实现

(ps:注意try-finally中的缩进问题)

2.使用with open函数打开,以及常见的坑

#with作用就是调用close()方法

跟前面的try-finally实现功能一样,但是代码更简洁

file对象方法

file.read(size):size未指定则返回整个文件,如果文件大小>2倍内存则有问题.f.read()读到文件尾时返回""(即空字符串)。

file.readline():每次读取一行

file.readlines([size]):一次性读取所有内容并返回list

for line in f:print(line) :通过迭代器访问

f.write("hello "):如果要写入字符串以外的数据,先将他转换为字符串

f.tell():返回一个整数,表示当前文件指针的位置(文件头的字节数)

如果文件小,用read()一次性读取最方便,不确定大小建议用read(size)比较保险,如果是配置文件使用readlines()最方便。

1.打开非utf-8编码的文件

f=open('/users/wujing/desktop/test2020/ex15_sample.txt','r',encoding='gbk')

f.read()

2.打开二进制文件

读取二进制文件,比如图片、视频等,用rb模式打开即可

参考资料:https://blog.csdn.net/chenmozhe22/article/details/81434549

python创建打开文件-python打开文件方式相关推荐

  1. 五行代码python 创建Excel(xls)文件以及数据写入

    五行代码python 创建Excel(xls)文件以及数据写入 今天我们采用xlwt来快速创建Excel的文件,一起来看一下代码. import xlwt new_workbook=xlwt.Work ...

  2. 怎么用python创建文件-如何用Python创建生成xml文档文件的方法

    用如何用Python完成创建生成xml文档文件的工作. 需要用到的方法:from xml.dom.minidom import Document,想必大家很熟悉这个操作了,接下来就用python 创建 ...

  3. python创建工程sublimw,python使用sublime搭建开发环境的简单示例

    这篇文章主要为大家详细介绍了python使用sublime搭建开发环境的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来 ...

  4. python 创建画板_OpenCV +Python 制作画板

    首先声明一下,本例思路不是博主原创,博主在前人的代码上进行了个性化的修改,制作了一个简单的画图工具.下面附上自己的理解,与君共勉. 效果图 画图工具实现 代码 # coding:utf-8 impor ...

  5. Python 创建简单的统一格式文件

    Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式来编写笔记. 本文利用简单的Python文件操作, 实现了在短时间内创建一批以"00XX.md"格式为名, ...

  6. python处理表格数据-用Python创建/读取/导出表格数据文件

    一.创建数据集 R语言中创建或导入数据框是非常常见的,只需要一个data.frame的命令就可以了,这个是R语言的基本命令. 我不习惯用Python进行表格式的数据操作和分析,这次和阿雷一起学习如何在 ...

  7. python创建文本、判断该文件共有多少行_python如何判断文件有多少行

    如何统计读取的一个txt文本的行数呢? 云海天教程网,大量的免费python教程,欢迎在线学习! 最简单的办法是把文件读入一个大的列表中,然后统计列表的长度.如果文件的路径是以参数的形式filepat ...

  8. python调用vbs脚本_使用python创建的参数执行vbs文件

    我想一次将几十个excel表格转换成csv文件.我有一个正在工作的.vbs文件来进行转换,我想在python代码的帮助下在不同的工作表上执行这个.vbs文件.我有以下两个版本的python代码: 版本 ...

  9. python创建一个新的txt文件-如何在python中编辑文本文件并创建一个新的文本文件?...

    我有这样的文本文件:>ENST00000511961.1|ENSG00000013561.13|OTTHUMG00000129660.5|OTTHUMT00000370661.3|RNF14-0 ...

  10. python创建一个文件并写入_python创建文件并写入

    python怎么以追加的方式写文件? Python 3.5 想将从1到10写入一个文件并且自动换行 现在需要一个写文件方法,将selenium的脚本运行结果写入test_result.log文件中 首 ...

最新文章

  1. PCIE BAR空间
  2. c++11的10个新特性
  3. TimSort算法分析
  4. GDCM:gdcm::TagToType的测试程序
  5. 禁用DropDownList某一选项
  6. 正则表达式小括号的多义性
  7. 理解_授权数据模型_Spring Security OAuth2.0认证授权---springcloud工作笔记112
  8. 语音识别的两个方法_语音识别的应用有哪些
  9. 在 UIWebView 中如何准确获得页面加载完成的事件
  10. Ubuntu 9.04下安装飞信LibFetion V1.1版
  11. 【软件安装】TeXLive 2022安装(Latex下载,安装,测试,升级)教程
  12. T6 v6.2puls1 安装了最新补丁之后采购发票结算之后入库单价税合计有1分差额
  13. 在html5水平边距属性hspace,HTML5 常用语法一览(列举不支持的属性)
  14. 笔记本超薄本14寸,15.6寸,16.1寸对比图
  15. 联通大数据应用及沃云平台支撑能力
  16. [原创]获取还原某音弹幕(web版)
  17. Esp32-diy桌面可交互机器人
  18. 网易测试开发岗面试经历
  19. xpath-通过列表推导式和string(.)的方式获取标签下包含子标签的所有文本
  20. 微软官方原版win7(64位/32位)旗舰版系统下载

热门文章

  1. (转载)macOS 解决apue.h不存在的问题
  2. MAP 最大后验——利用经验数据获得对未观测量的点态估计
  3. malloc和new出来的地址都是虚拟地址 你就说内存管理单元怎么可能让你直接操作硬件内存地址!...
  4. HBase底层存储原理——我靠,和cassandra本质上没有区别啊!都是kv 列存储,只是一个是p2p另一个是集中式而已!...
  5. 物联网数据库需求——写入快,分析能力强
  6. vue中watch的用法
  7. 详解JavaScript中的this
  8. 程序员必须知道的10大基础实用算法及其讲解
  9. [转]使用jQuery.ajax傳送物件陣列給ASP.NET MVC
  10. Servlet的初始化参数