专栏首页python百例29-文件对象基础操作

29-文件对象基础操作

# 文件操作的三个步骤:打开、读写、关闭
# cp /etc/passwd /tmp
f = open('/tmp/passwd')  # 默认以r的方式打开纯文本文件
data = f.read()  # read()把所有内容读取出来
print(data)
data = f.read()  # 随着读写的进行,文件指针向后移动。
# 因为第一个f.read()已经把文件指针移动到结尾了,所以再读就没有数据了
# 所以data是空字符串
f.close()

f = open('/tmp/passwd')
data = f.read(4)  # 读4字节
f.readline()  # 读到换行符\n结束
f.readlines()  # 把每一行数据读出来放到列表中
f.close()

################################
f = open('/tmp/passwd')
for line in f:
    print(line,)
f.close()

##############################
f = open('图片地址', 'rb')  # 打开非文本文件要加参数b
f.read(4096)
f.close()

##################################
f = open('/tmp/myfile', 'w')  # 'w'打开文件,如果文件不存在则创建
f.write('hello world!\n')
f.flush()  # 立即将缓存中的数据同步到磁盘
f.writelines(['2nd line.\n', 'new line.\n'])
f.close()  # 关闭文件的时候,数据保存到磁盘

##############################
with open('/tmp/passwd') as f:
    print(f.readline())

#########################
f = open('/tmp/passwd')
f.tell()  # 查看文件指针的位置
f.readline()
f.tell()
f.seek(0, 0)  # 第一个数字是偏移量,第2位是数字是相对位置。
              # 相对位置0表示开头,1表示当前,2表示结尾
f.tell()
f.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 43-练习:生成文本文件

    凯茜的老爸
  • 113-模拟字符串rstrip用法 - 草稿

    高山11指出使用负数索引的问题(详见评论)以及解决办法。如果使用正数索引就没有问题了,方法如下:

    凯茜的老爸
  • 113-模拟字符串rstrip用法

    凯茜的老爸
  • 解决python3写文件时无法处理中文字

    我用selenium访问了百度云,并获取了html内容,想把它保存到本地文件但总是报如下错误:

    py3study
  • 1.驱动程序概念介绍

    u-boot的任务是启动内核,内核的任务是启动应用程序 ,应用程序会涉及很多文件和硬件操作(当然不会直接操作硬件),比如读写文件,点灯、获取按键值。 比如对于控...

    张诺谦
  • Python-使用for循环遍历文件

    fd.read()         从头读到位,读完后指针指向文件的末尾,返回的是字符。

    py3study
  • 函数柯里化

    上一节介绍了高阶函数的定义,并结合实例说明了使用高阶函数和不使用高阶函数的情况。后面几部分将结合实际应用场景介绍高阶函数的应用,本节先来聊聊函数柯里化,通过介绍...

    Tiffany_c4df
  • 业务实践,数据分析应从细节入手

    John Lucker是德勤咨询公司顾问,他20多年来都没有申请过一张新的信用卡。但是在过去的三年里,他却收到了超过300份来自银行,连锁酒店,各...

    机器学习AI算法工程
  • 使用sqlite3 模块操作sqlite3数据库

    Python内置了sqlite3模块,可以操作流行的嵌入式数据库sqlite3。如果看了我前面的使用 pymysql 操作MySQL数据库这篇文章就更简单了。因...

    乐百川
  • 解决使用innobackupex备份mysql产生returned OS error 124

    这个是指mysql进程超出了打开最多的文件数量,检查下mysql数据文件data目录下的文件总数。

    bboysoul

扫码关注云+社区

领取腾讯云代金券