首页 > 编程语言 >使用Python实现读取TXT小说文件按每一回显示打印出来

使用Python实现读取TXT小说文件按每一回显示打印出来

时间:2022-10-03 15:31:52浏览次数:51  
标签:txt 读取 item Python re result print TXT

大家好,我是皮皮。

一、前言

前几天在Python铂金交流群【红色基因代代传】问了一个Python处理的问题,提问截图如下:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python库

文件里边的部分截图如下:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python入门_02

大概的需求如下所示:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python3_03

二、实现过程

这里【Python进阶者】根据需求,写了一份代码,如下所示:

import re
with open('西游记.txt', 'r', encoding='utf-8') as f:
text = f.read()
regex = re.compile(r'.*?《》(.*?)《》.*?', re.S)
result = re.findall(regex, text)
print(len(list(result)))
for item in result:
print(item)

可以得到如下的效果:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python开发_04

后来【瑜亮老师】发现了一个问题,并且指出:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python开发_05

改进后的代码如下所示:

import re

with open('西游记.txt', 'r+', encoding='utf-8') as f:
txt = f.read()

rex1 = r'《》目录 (.*?)\n\n\n'
rex2 = r'《》目录 (第一百回.*?《西游记》至此终。)'
result = re.findall(rex1, txt, re.S)
temp = re.findall(rex2, txt, re.S)
result += temp
# print(len(result))
for item in result:
print(item)

运行之后,可以得到下图的结果:

使用Python实现读取TXT小说文件按每一回显示打印出来_Python库_06

顺利地解决了粉丝的问题。

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Python文本处理的问题,文中针对该问题,使用正则表达式匹配出想要的结果,并给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。



标签:txt,读取,item,Python,re,result,print,TXT
From: https://blog.51cto.com/u_13389043/5730382

相关文章

  • 盘点一个Python抓取有道翻译爬虫中的报错问题
    大家好,我是皮皮。一、前言前几天在Python白银交流群【斌】问了一个Python网络爬虫的问题,提问截图如下:报错截图如下:粉丝需要的数据如下:二、实现过程有道翻译之前有做过很多,确......
  • 将你的 Python 脚本转换为命令行程序
    使用Python中的​​scaffold​​​和​​click​​库,你可以将一个简单的实用程序升级为一个成熟的命令行界面工具。在我的职业生涯中,我写过、用过和看到过很多随意的......
  • 常见工程、应用、学习错误及安装问题之Python
    ​​pip临时使用国内镜像源​​​​python创建文件夹​​​​python读取文件下所有文件路径​​​​将numpy中的True/False转换成1/0​​​​使用python复制文件​​​​L......
  • 为python安装扩展模块时报错——error: invalid command 'bdist_wheel'
    具体过程: devil@hp:~/lab$./bazel-bin/python/pip_package/build_pip_package/tmp/dmlab_pkg2022年10月03日星期一14:05:54CST:===Buildingwheelusage:setu......
  • python pygame 迷宫生成
    importrandomimportsysimportpygame#使用pygame之前必须初始化pygame.init()#参数设置box_w,box_h=5,5#盒子宽高window_w,window_h=400,400x,y=0,0#盒......
  • python pygame 生命的游戏
    importsysimportpygameimportrandom#参数设置box_w,box_h=10,10#盒子宽高window_w,window_h=400,400x,y=0,0#使用pygame之前必须初始化pygame.init()#设......
  • 学习python遇到的问题
    python重定向输入:io.UnsupportedOperation:notreadable两处错误一、用open打开一个文件,此时调用的是w写入模式,下面使用read是没有权限的,得使用w+读写模式二、使用wri......
  • python学习:multiprocessing多进程-Pool进程池模块
    Multiprocessing.Pool可以提供指定数量的进程供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;但如果池中的进程数已经达到规定......
  • 【推荐收藏】时间序列分析全面指南(附Python代码)
    大家好,时间序列是在规律性时间间隔上记录的观测值序列。本文我将带你了解在Python中分析给定时间序列的特征的21个全过程。内容较长,建议收藏、点赞、关注。内容​​1.什......
  • TransBigData:一款基于 Python 的超酷炫交通时空大数据工具包
    今天分享一次Python交通数据分析与可视化的实战!其中主要是使用TransBigData库快速高效地处理、分析、挖掘出租车GPS数据。所介绍的相关技术开发了Python开源库TransBigData,......