日常练习:文件操作

日常练习:文件操作

01:一般文件操作

①打开文件

用open()函数打开文件,返回文件对象。其中name表示文件名,mode表示打开方式。

<variable> = open(<name>, <mode>)

打开方式为:

  • r: 只读,文件指针将会放在文件的开头;
  • w:只写,如果文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除;如果该文件不存在,创建新文件;
  • a: 打开一个文件用于追加,如果该文件已存在,文件指针将会放在文件的结尾;如果该文件不存在,创建新文件进行写入;
  • rb: 只读二进制文件,一般用于非文本文件如图片等;
  • wb: 只写二进制文件,一般用于非文本文件如图片等;
  • ab: 以二进制格式打开一个文件用于追加;
  • w+: 打开一个文件用于读写。

注:使用open()一定要保证文件是关闭状态。

②读写文件

先看读文件,其中encoding表示编码方式,一般有:ASCII格式、Unicode码、UTF-8码、GBK编码等。

file = open('poem.txt', 'r', encoding = 'utf-')
# 读取整个文本的字符串
data = file.read()
print(data)
# 读取内容的下一行内容
file = open('poem.txt', 'r', encoding = 'utf-')
data1 = file.readline()
print(data1)
# 读取内容为列表,每个元素为一行字符串
file = open('poem.txt', 'r', encoding = 'utf-')
data2 = file.readlines()
print(data2)

输出:
在这里插入图片描述
再看写文件

# 1. 追加方式写入
file = open("poem.txt", 'a+', encoding = 'utf8')
str1 = '字符串1'
str2 = '字符串2'
# write()写一句
file.write(str1)
file.write(str2)
# 关闭文件
file.close()

# 2.新建文件并写入
new_file = open('new.txt', 'w', encoding = 'utf8')
strs = ['字符串1','字符串2']
# writeline()写多句
new_file.writelines(strs)
new_file.close()

file = open('poem.txt', 'r', encoding = 'utf8')
content = file.read()
print(content)

new_file = open('new.txt', 'r', encoding = 'utf8')
new_content = new_file.read()
print(new_content)

输出:
在这里插入图片描述

③关闭文件

  • file.close():关闭文件;
    可使用try-except-finally异常捕获语句。
  • file.flush():刷新文件内部缓冲;
try:
    #文件操作
except :
    #异常处理
finally:
    file.close()

④循环遍历文件

分别用read()和readlines()遍历:

file = open("new.txt", 'r', encoding = 'utf8')
# 每一行为一个元素
for line in file.readlines():
    print(line)
file.close()

file = open('new.txt', 'r', encoding = 'utf8')
content = file.read()
# 每个字符为一个元素
for line in content:
    print(line)
file.close()

输出:
在这里插入图片描述

02:csv文件操作

# 导入csv模块
import csv
# 创建csv文件对象, newline避免出行新行
data = open('data.csv', 'w', encoding = 'utf8', newline = '')
# 写入文件
writer = csv.writer(data)
# 以列表类型写入一行
writer.writerow(['姓名', '年龄', '学号'])
writer.writerow(['小红', '15', '1'])
writer.writerow(['小兰', '16', '2'])
data.close()

# 读取文件内容
data = open('data.csv', 'r', encoding = 'utf8')
reader = csv.reader(data)

for line in reader:
    print(line[0], line[1], line[2])

data.close()

输出:
在这里插入图片描述
参考链接:[Python从零到壹] 三.语法基础之文件操作、CSV文件读写及面向对象

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值