Python学习之第十五天 文件读写

今天我们一起来学习如何使用Python去进行文件的读写操作。

# 机构:家里蹲
# 作者:青灬火
# 时间:2021/7/26 12:17
'''
文件的读写原理
    文件的读写俗称“IO操作”
    文件读写操作流程
        Python操作文件 --》 打开或新建文件 --》 读、写文件 --》 关闭资源
    内置函数open()创建文件对象
    语法规则
        file = open(filename [, mode, encoding]) #mode,默认为只读,encoding默认文本文件中字符的编写格式为 gbk
'''
file = open('a.txt', 'r', encoding='UTF-8')
print(file.readlines())
file.close()

'''
文件的类型
    按文件中数据的组织形式,文件分为以下两类
    文本文件:存储的是普通“字符”文本,默认为unicode字符集,可以使用记事本程序打开
    二进制文件:把数据内容用“字节”进行存储,无法用记事本打开,必须使用专用的软件打开,举例:mp3音频文件,jpg图片,.doc文档等
    
    打开模式
    r           以只读模式打开文件,文件的指针将会放在文件的开头
    w           以只写模式打开文件,如果文件不存在则创建,如果文件存在,则覆盖原有内容,文件指针在文件的开头
    a           以追加模式打开文件,如果文件不存在则创建,文件指针在文件开头,如果文件存在,则在文件末尾追加内容,文件指针在原文件末尾
    b           以二进制方式打开文件,不能单独使用,需要与其它模式一起使用,rb,或者wb
    +           以读写方式打开文件,不能单独使用,需要与其他模式一起使用,a+
'''
file = open('a.txt', 'w')
file.write('helloworld')
file.close()

file = open('a.txt', 'a')
file.write('\nPython')
file.close()

srcFile = open('C:/Users/15191/Desktop/python.jpg', 'rb')
targetFile = open('python.jpg', 'wb')
targetFile.write(srcFile.read())

targetFile.close()
srcFile.close()
'''
文件对象的常用方法
    read([size]): 从文件中读取size个字节或者字符的内容返回。若省略[size],则读取到文件末尾,即一次读取文件所有内容
    readline(): 从文本文件中读取一行的内容
    readlines(): 把文本文件中每一行都作为独立的字符串对象,并将这些对象放入一个列表返回
    write(str): 将字符串str内容写入文件
    writeline(s_list): 将字符串列表s_list写入文本文件,不添加换行符
    seek(offset[, whence]): 把文件指针移动到新的位置,offset表示相对于whence的位置
                            offset为正表示往结束方向移动,为负往开始方向移动
                            whence不同的值代表不同含义:
                                0: 从文件头开始计算(默认值)
                                1: 从当前位置开始计算
                                2: 从文件尾开始计算
    tell(): 返回文件指针的当前位置
    flush(): 把缓冲区的内容写入文件,但不关闭文件
    close(): 把缓冲区的内容写入文件,同时关闭文件,释放文件对象相关资源
'''
file = open('a.txt', 'r')
#print(file.read())
#print(file.read(2))
#print(file.readline())
#print(file.readlines())
file.close()

file = open('a.txt', 'a')
#file.write('Java')
lst = ['java', 'C', 'C++', 'C#', 'VB', 'Go']
file.writelines(lst)
file.close()

file = open('a.txt', 'r')
file.seek(2)
print(file.read())
print(file.tell())
file.close()

file = open('b.txt', 'w')
file.write('hello')
file.flush()
file.write('world')
file.close()

'''
with语句
    with语句可以自动管理上下文资源,不论什么原因跳出with块,都能确保文件正确的关闭,以此来达到释放资源的目的
'''
with open('a.txt', 'r') as file:
    print(file.read())

with open('python.jpg', 'rb') as src_file:
    with open('pythonCopy.jpg', 'wb') as tar_file:
        tar_file.write(src_file.read())


扫码关注公众号“JAVA记录册”

该公众号致力于为大家分享工作中会用到一些简单实用的小知识,而不是那些悬在云端的高大上但又感觉空泛的文章,欢迎大家关注,谢谢!

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值