文件的读取及指针位置

打开文件的三步:打开->操作->关闭

文件的读取:

f = open('/tmp/passwd')打开

f.close()操作完,关闭文件

判断文件对象拥有的权限

print(f.readable())是否拥有可读权限True or Falsh

print(f.writable())是否拥有可写权限

文件的六种读取方式:

r(默认)

-只能读,不能写

-读取文件不存在,报错

如果文件不存在,报错

r+:

-可读,可写

-文件不存在,会报错

-默认情况下,从文件指针所在位置开始写入

print(f.tell()) 打印指针位置

w:

-只可写

-会清空文件之前的内容

-文件不存在,会创建新文件并写入

w+:

-可读,可写

-会清空文件内容

-文件不存在,会创建新文件并写入

a:

-只可写

-不会清空文件内容

-文件不存在,会创建新文件并写入

a+:

-可读,可写

-文件不存在,不报错

-不会清空文件内容

文件的读取

b+二进制读取

f = open('/tmp/passwd','rb+')b二进制读取

f.close()

print(f.read())

print(f.read(5))括号里的数字表示指定读取的几个字符

print(f.readline())对文件一行一行的读(默认读取第一行) 不能指定读取几行,()写入数字不是读几行

print(f.readlines())将文件的内容以列表的形式返回,每行为列表的一个元素,且有换行符 ()写入数字不是读几行

readlines():读取文件内容,返回一个列表,列表元素分别为文件行的内容

print([line.strip() for line in f.readlines()])不要\n换行符

print(list(map(lambda x:x.strip(),f.readlines())))不要\n换行符

文件指针位置:

print(f.tell())打印指针位置

print(f.read())

print(f.tell())

f.write('hello')

f.seek(0)指针移动的位置

移动指针来指定文件文件当前的位置,通过seek()来实现

seek第一个参数是偏移量:>0,代表向右移动,<0,代表向左移动

seek第二个参数是:

0:移动指针到文件开头 (0,0)

1:不移动指针 (0,1)

2:移动指针到末尾 (0,2)

非纯文本文件的读取(b,b+)

需要通过二进制文件的读取

f1 = open('redhat.jpg',mode='rb')

content = f1.read()

f1.close()

f2 = open('hello.jpg',mode='wb')

f2.write(content)将图片写入f2,出现与f1一样的f2

f2.close()

python 指针指向的内容,python-文件的读取及指针位置相关推荐

  1. python后端开发学路线_【后端开发】Python要学哪些内容?Python程序员学习路线图...

    很多零基础入门学习python不知道学习什么?也不知道Python要学哪些内容?下ki4网为您总结一下Python程序员学习路线图. python的应用范围是很广泛的,例如一些网络的爬虫,和web的开 ...

  2. python文件打开模式中、使用w模式、文件指针指向_被python文件模式“w+”所迷惑

    慕仰8121524 假设您正在用with像你应该说的那样.然后你会做这样的事情来阅读你的文件:with open('somefile.txt', 'w+') as f: # Note that f h ...

  3. python中codecs_Python3 中codecs进行文件的读取

    简单的概念与说明 编码(动词):按照某种规则(这个规则称为:编码(名词))将"文本"转换为"字节流".而在python 3中则表示:unicode变成str 解 ...

  4. 指针与指针指向的内容(四)

    #include <stdio.h>int main(){char *str1 = (char*)malloc(4 * sizeof(char));char *str2 = (char*) ...

  5. 关于空指针(指针指向为NULL)和void类型的指针的理解

    正在学C,书上老说空指针,或者说void指针,对于我这样的生手来说,理解非常容易造成混淆,因为void这个单词的意思也是空,到底空指针的意思是指指向地址为空的类型呢,还是指void类型的指针呢 (1) ...

  6. 【C 语言】二级指针案例 ( 字符串切割 | 返回 自定义二级指针 作为结果 | 每个 一级指针 指向不同大小内存 | 精准分配每个 一级指针 指向的内存大小 )

    文章目录 一.二级指针案例 ( 返回自定义二级指针 | 精准控制内存大小 ) 二.完整代码示例 一.二级指针案例 ( 返回自定义二级指针 | 精准控制内存大小 ) 博客 [C 语言]二级指针案例 ( ...

  7. 怎么样让指针指向尾结点C语言,带头结点头指针与带头结点尾指针的学习

    单循环链表 对于单链表而言,如果每次在遍历到单链表中间处时需要遍历整个链表,此时只能往后遍历,前方的指针便会丢失.如图1所示,此时若链表遍历到a2处依旧可以通过尾结点循环到a1处,这是单链表所不能解决 ...

  8. python 点云las、laz文件的读取、写入、压缩

    1. python las读取与写入 用laspy库: https://pypi.org/project/laspy/ 获取las.laz的规格.点数据格式,点数据的具体字段名称,具体的点数据 解析l ...

  9. python:dataframe保存成csv文件和读取

    一.从csv文件读取数据为dataframe 函数原型: pandas.read_csv(filepath_or_buffer, sep=', ', delimiter=None, header='i ...

最新文章

  1. Ubuntu下Sublime Text 3解决无法输入中文的方法
  2. TOP Server教程:预览非标准协议创建的未来
  3. 在VS2010/MFC中如何对对话框添加控件
  4. 使用R语言分析微信好友
  5. SAP直接踢人下线 SM04
  6. ER TO SQL语句
  7. Hadoop 副本存储策略的源码修改和设置
  8. Executors浅析
  9. 解决vi/vim中粘贴会在行首多很多缩进和空格的问题
  10. DNF最新纯图色脚本框架2022-4-27
  11. 读KVM虚拟化技术实战与原理解析
  12. 【AHP】层次分析法 | 过程解读 案例实践
  13. openwrt下部署adbyby去广告大师 免luci 带自启动,自动开启透明代理
  14. 我的工程师爸爸 - 音频应用DIY系列之三:汤姆猫
  15. java程序员语录_java程序员励志说说26条
  16. BeautifulSoup 根据输入的公司名称来爬取公司的详细信息(2022-08-24更新版)
  17. 磁力搜 For magnetW常见问题
  18. 肠道微生物:治疗功能性消化不良的新途径
  19. Pearson 相关系数--最佳理解及相关应用
  20. Djongo框架+Vue问题总结

热门文章

  1. 探索cqrs和事件源_编写基于事件的CQRS读取模型
  2. java自动推断类型_推断:Facebook的新Java静态分析工具
  3. 分披萨问题_比萨问题–建造者与装饰者
  4. 测量时间:从Java到内核再到
  5. avro文件导入到hive_XML到Avro的转换
  6. 串行内存消耗 并行内存_如何估算内存消耗?
  7. Neo4j:Cypher – Neo.ClientError.Statement.TypeError:不知道如何添加Double和String
  8. 枚举集合的EnumSet
  9. java 权威指南_Java 8:CompletableFuture权威指南
  10. 将EntityManager.refresh添加到所有Spring数据存储库