六、文件读取与写入

1、读取文件数据

打开文件的模式

 

  • 读取数据

在python中,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件;

        open(文件名,访问模式)

        示例如下

        f=open('test.txt','w')

# 读取文本文件  (将文件存放在工程目录中,不要放在工程下面的文件夹中)
f = open('walden.txt', mode='r')  # 按照指定的方式打开文件
txt = f.read()                    # 读取具体文件数据
f.close()                         # 关闭文件

# f = open('walden.txt', mode='r')  # 按照指定的方式打开文件
# txt = f.readlines()                    # 一行一行读取,读取具体文件数据
# f.close()
  • 去除多余符号
  • 单词分割
  • 词频统计
  • 排序
  • 写出结果

2、任务实现

# 任务实现
# 1.读取数据
f = open('walden.txt', mode='r')  # 按照指定的方式打开文件
txt = f.read()                    # 读取具体文件数据
f.close()                         # 关闭文件
# 2.去除多余符号
lyric = txt.lower()      # 将大写字母转换成小写形式
lyric_new = re.sub('[,.:"\'?\n;-]', '', lyric)  # 去除多余的标点符号
# 3.单词分割
words = lyric_new.split()
# 4.词频统计
word_freq = {}                          # 构建一个空字典,用于后续记录各单词的频次
for word in words:
    if word not in word_freq.keys():    # 判断当前访问的单词是否在字典中
        word_freq[word] = 1             # 若不在则以该单词为键创建一个键值对,且赋值为一
    else:
        word_freq[word] += 1            # 若在,则将该单词对应键的值加一
# 5.排序
result = sorted(word_freq.items(), key=lambda x: x[1], reverse=True)

# 6.写出结果
result_string = str(result)    # 将结果转换成字符串形式

with open('word_freq.txt', mode='w') as f:
    f.write(result_string)     # 将结果数据写入至指定文件中

3、将数据写入文件

使用write()可以完成向文件写入数据

  • f=open('test.txt','w')
  • f.write('hello world,\n')
  • f.write('i am here!\n')
hello_world = 'start 123'

f = open('hello_world.txt', mode='w')     # 以写入的形式打开文件
f.write(hello_world)                      # 将数据写入至已打开的文件
f.close()     # 关闭文件

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值