打开文件:

f=open('test.txt',mode='r',encoding='utf-8')

参数1  文件名,若非当前路径,需指出具体路径

参数2   mode:   文件打开模式

r    只读模式【默认模式,文件必须存在,不存在则抛出异常】,文件指针放在文件开头

w,只写模式【不可读;不存在则创建;存在则清空内容】
x, 只写模式【不可读;不存在则创建,存在则报错】
a, 追加模式【可读; 不存在则创建;存在则只追加内容】,文件指针自动移到文件尾

"+" 表示可以同时读写某个文件
r+, 读写【可读,可写】,文件指针放在文件开头,文件存在不清空,逐步覆盖旧内容
w+,写读【可读,可写】,消除文件内容,然后以读写方式打开文件。
x+ ,写读【可读,可写】
a+, 写读【可读,可写】,以读写方式打开文件,并把文件指针移到文件尾

"b"表示以字节的方式操作,以二进制模式打开文件,而不是以文本模式。
rb 或 r+b
wb 或 w+b
要是写入文本 x=f.write('物理教师'.encode('utf-8'))
xb 或 w+b
ab 或 a+b
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码

读取文件:

s=f.read()     读取文件的全部内容

c=f.read(3) 从当前位置开始读取的最大字符数
  如果是二进制 可能是字节数
readline() 每次读取文件的一行,包括回车换行符,自动移动指针
  返回值是''表示文件尾

readlines()    #读取文件的所有行,返回一个字符串列表
  ['我是中国人我的籍贯在浙江\n', '我是物理教师\n', '我喜欢学习python']

 文件的关闭:

f.close()

文件的写入:

x=f.write('物理教师')

参数  要写入的内容

返回值  写入的字符数

自动移动指针

特别注意:是覆盖不是插入

返回的是写入的字符长度

f.writelines(['李明','李秀艳','李雪倩'])     写入一序列的字符串.这一序列字符串可以是由迭代对象产生的,如一个字符串列表。

换行需要制定换行符 \n。

f.flush()  #清空缓存,把缓存的内容写入磁盘文件,自动移动文件指针

文件的定位-指针:

f.seek(0)     移动指针

参数1  偏移量,单位是字节,不是字符

参数2   可选,默认值为 0。表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起

文本文件只能是0;二进制文件能1能2

c=f.tell()   返回指针当前的位置

文件遍历:

f=open('test.txt',mode='r+',encoding='utf-8')
for s in f: #按行拆解
print(s,end='')
f.close()

最佳处理格式

with open('d:/ss/test.txt',mode='r+',encoding='utf-8') as f:

f.read()

print(c)

自动关闭

f.truncate(2)   删除指定字节后面的内容

从文件的首位置开始

参数 要保留的字节数

没有返回值

c=f.readable()    判断文件是否可读

可读  返回true

我理解的是readable只要文件不是EOF 就是可读的只不过有可能读不出内容了

c=f.writable()    判断文件是否可写

f.name    返回文件的路径       d:/ss/test.txt

天子骄龙

python-文件读写操作的更多相关文章

  1. python 文件读写操作(24)

    以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...

  2. Python 文件读写操作实例详解

    Python提供了必要的函数和方法进行默认情况下的文件基本操作.你可以用file对象做大部分的文件操作 一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前 ...

  3. Python—文件读写操作

    初识文件操作 使用open()函数打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了,根据打开文件的方式不同能够执行的操作也会有相应的差异. 打开文件的方式: r, w, a, ...

  4. 一篇搞懂python文件读写操作(r/r+/rb/w/w+/wb/a/a+/ab)

           关于文件操作的几种常用方式,网上已有很多解说,内容很丰富,但也因此有些杂乱复杂.今天,我就以我个人的学习经验写一篇详细又易懂的总结文章,希望大家看完之后会有所收获. 一.核心功能 ‘r’ ...

  5. python文件读写操作与linux shell变量命令交互执行

    python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼! #coding=utf-8 #!/usr/bin/python import os impor ...

  6. python文件读写操作

    操作文件时一般经历以下步骤: 打开文件 操作文件 1.打开文件: 文件句柄 = open('/path/to/file_name','pattern') pattern: r:只读模式,打开文件时默认 ...

  7. python 文件读写操作打开模式

    ‘r’:只读.该文件必须已存在. ‘r+’:可读可写.该文件必须已存在,写为追加在文件内容末尾. ‘rb’:表示以二进制方式读取文件.该文件必须已存在. ‘w’:只写.打开即默认创建一个新文件,如果文 ...

  8. python里文件读写操作

    文件读写操作一种基本操作,但是里面也存在很多需要注意的问题,例如字符编码.内存缓冲.指针位置等等.如果忽视这些问题就会引起很多不必要的麻烦.简单来说,文件的读写分为几个过程: 打开文件,并定义操作文件 ...

  9. python(三)一个文件读写操作的小程序

    我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1. ...

  10. excel、xls文件读写操作

    python 常用的excel.xls文件读写操作,有两个模块 xlrd:读 xlwt:写 本次先写一个读的例子: class CaseData(object): def __init__(self, ...

随机推荐

  1. JVM内存模型你只要看这一篇就够了

    JVM内存模型你只要看这一篇就够了 我是一只孤傲的鱼鹰 让我们不厌其烦的从内存模型开始说起:作为一般人需要了解到的,JVM的内存区域可以被分为:线程栈,堆,静态方法区(实际上还有更多功能的区域,并且这 ...

  2. 关于 HDC 的释放

    GetDC和ReleaseDC的调用配对,CreateDC和DeleteDC的调用配对. GetDC是从窗口获取现有的DC,而CreateDC是创建DC,所以ReleaseDC和DeleteDC的作用 ...

  3. 正向选择(positive selection)、中性选择(neutral selection)、平衡选择(balancing selection)示意图

    正向选择:某一位点逐渐积累,成优势的位点,具体表现为:随着时间延长,该位点的突变allele频率越来越高,远远超过野生型allele: 中性选择:随着时间的延长,总体频率没有改变太多: 平衡选择:位点 ...

  4. Tomcat 用 startup.bat 启动时,加载信息之后又关闭服务器(差不多一闪而过)问题

    Tomcat 用 startup.bat 启动时,加载信息之后又关闭服务器(差不多一闪而过)问题 以前是正常的,后来在 server.xml 文件的 <Host> </Host> ...

  5. No cached version of cn.lightsky.infiniteindicator:library:1.2.2 available for offline mode.

    去掉勾勾

  6. M1-SaltStack&Flask-Day4

    1.virtualenv 虚拟环境 2.virtualenv env1 -p= 解释器路径 3. 进入Scripts 执行activate 激活配置 4.执行deactivate 取消激活配置 2.1 ...

  7. 2017-12-18python全栈9期第三天第二节之str常用操作方法及for循环之判断字母数字组成

    #!/user/bin/python# -*- coding:utf-8 -*-name = 'zd123'print(name.isalnum()) #由数字或字母组成print(name.isal ...

  8. flask模版继承和block

    模版继承和block的目的就是为了减少前端代码量 flask_ones.py #encoding:utf-8 from flask import Flask,url_for,redirect,rend ...

  9. OS + RedHat 6.3 x64 NFS / mount.nfs: access denied by server while mounting

    s Linux mount/unmount命令(转) https://www.cnblogs.com/xd502djj/p/3809375.html 问题2:NFS配置项no_root_squash和 ...

  10. 3、JPA-API

    Persistence Persistence 类用于获取 EntityManagerFactory 实例,该类包含一个名为 createEntityManagerFactory 的静态方法 . cr ...