整理网站页面CV的《长恨歌》文本,python字符串基础知识实战。

156 篇文章 3 订阅
本文介绍了使用Python处理网页抓取的《长恨歌》文本,通过去除回车符和数字,实现诗句的整理。首先,用‘。’分割文本,然后使用lambda函数或自定义函数去除回车和数字。最终,通过优化代码,仅遍历数字字符进行替换,实现了更加高效的文本整理,并将结果写入新的文本文件。
摘要由CSDN通过智能技术生成

【点击此处跳转笔记正文】

Python 官网https://www.python.org/




  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


等风来,不如追风去……


《长恨歌》文本
整理网站页面CV的字符串
(python字符串基础知识实战)


目 录


  这是一段由聊天引出的代码应用——
由聊天中齐老师的一段引文,让我搜索学习了缠绵凄美的《长恨歌》,动了CV其文本的心思。

在这里插入图片描述


回页首

  可从页面CV到文本,却成了下面截图的样子😭😭
在这里插入图片描述


  一字一行,期间还间杂一些注释索引的数字。手动整理?这文本可不短!还是让让代码出手吧——
  不就是一个字符串基础的应用嘛。“数据特征分析,利用特征选用适宜方法代码,整理数据,得想要的结果。”去除回车符和数字字符,按每句诗一行打印就好。
  上码——

代码


title = '长恨歌_网cv'
filename = f'/sdcard/Documents/{title}.txt'

with open(filename) as f:
    s = f.read().split('。') # 用“。”分割长恨歌文本。

s = map(lambda x: x.replace('\n', ''), s) # 去除回车符。
print(*s)
input() 

在这里插入图片描述


  诗句注释的索引数字还没去除哩!加代码——用个函数循环,遍历去除数字和回车符。

代码


def mydel(s):
    ''' 去除回车符和数字 '''
    temp = []
    for i in s:
        if i not in '01234567890\n':
            temp.append(i) # 收集非数字和回车符的字符。
    return ''.join(temp)        

with open(filename) as f:
    s = f.read().split('。') # 用“。”分割长恨歌文本。

s = map(mydel, s) # 去除回车符。
print(*s)

在这里插入图片描述


  成功得到了想要的诗文字符串列表,只要写入文本文件,就“大功告成”。

代码


# 写入文本
title = '《长恨歌》'
filename = f'/sdcard/Documents/{title}.txt'
with open(filename, 'w') as f:
    f.write('。\n'.join(map(mydel, s))) # 将用。和换行符拼接的文本写入文本文件。

  成了!只需在文本首行敲几个回车就好😄。

在这里插入图片描述


回页首

  到此,问题解决,看似完结。其实,前面的代码只是“信手拈来”不够严谨,更可以优化改写。遍历每句诗去除回车和数字,是不是太复杂?
  把整个文件读取的字符串中,要去除的仅是数字和回车符。数字仅是0~9的字符组成,所以仅需遍历10个数字,分别替换成’'空字符就好。


优化改写后的代码

#!/sur/bin/nve python
# coding: utf-8

title = '长恨歌_网cv'
filename = f'/sdcard/Documents/{title}.txt'

with open(filename) as f:
    s = f.read() # 读取CV诗文文本。

for i in '0123456789': # 遍历去除数字。
    s = s.replace(i, '')

# 写入文本
title = '《长恨歌》'
filename = f'/sdcard/Documents/{title}.txt'
with open(filename, 'w') as f:
    poems = s.replace('\n', '').split("。") # 去除回车符并分割诗句。
    f.write('。\n'.join(poems)) # 用。和回车符拼接诗句列表并写入文件。


回页首

__上一篇:__ 反斜杠让您的csv文档字符不撞车,让“借”(白嫖)您csv数据的人叫苦不迭

__下一篇:__ 

我的HOT博:
    • 1
      点赞
    • 1
      收藏
      觉得还不错? 一键收藏
    • 打赏
      打赏
    • 2
      评论
    评论 2
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包

    打赏作者

    梦幻精灵_cq

    你的鼓励将是我创作的最大动力

    ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
    扫码支付:¥1
    获取中
    扫码支付

    您的余额不足,请更换扫码支付或充值

    打赏作者

    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

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

    余额充值