文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python中文本字符处理的简单方法记录

2024-04-02 19:55

关注

今天,跟大家分享一下我做小项目时想出来的文本字符处理的方法,希望能对大家有所帮助。

完整代码:


strings = "我,是‘C|S;D|N!的:程【序】员#M,r&.;P'a#n?_&学?狂"#将字符串设置好

def String_Process(string):#定义一个字符处理函数,设置参数string,是有待处理的字符串。
 print("python使我快乐!!")
 print("未处理的字符串:",string)
 varchar = '‘'“”:#,!【】,&#|?|,&;;?:"'#人为设定字符集合
 ls = []#定义一个列表用于存储拆散的字符
 for s in string:
  ls.append(s)#将字符串拆散存进列表中
 for element in ls:
  if element in varchar:#如果在字符集合内发现,则从列表中删除
   ls.remove(element)
 String = ''#定义字符串
 for l in ls:#将列表中拆散的元素组合回去。
  String = String+l
 print("处理后的字符串:",String)#得到处理结果
String_Process(string=strings)#调用函数,传入实参给形参。

运行结果,如下图:

对于处理文本字符的思想在代码中已经说明,关于代码的解释在注释中也写出了。我们把它通过函数进行封装,当我们需要处理文本字符的时候,通过调用函数就可以实现文本字符处理了。当然,调用函数处理字符时需要得到string返回值以及注释掉print,因为我们如果是在循环中调用,没必要全部打印一遍,影响视觉对文本的分析。即修改代码如下图:

对于上面的文本处理代码,我又做了一次更新,可以增加新的字符或者是字符串来更新字符集合,更加方便处理文本中的字符。

改进后的代码,如下图:


strings = "我,是‘C|S;D|N!的:程【序】员#M,r&.;②P'「(a#n」?_&学?狂..."#将字符串设置好

def Process(string):#定义一个字符处理函数,设置参数string,是有待处理的字符串。
  print("python使我快乐!!")
  print("未处理的字符串:",string)
  varchar = '‘'“”:#,!【】,&#|?|,&;;?:"'#人为设定字符集合
  var_ls = []
  for var in varchar:
    var_ls.append(var)
  print("这是当前的字符集合:",var_ls)
  while True:
    want = str(input("是否需要增加新的字符/字符集合?(yes or no)"))
    if want == 'yes':
      add_varchar = str(input("请输入需要增加的新字符/字符集合:"))
      for var in add_varchar:
        var_ls.append(var)
      print("更新后的字符集合:",var_ls)
    elif want == 'no':
      break
    else:
      print("输入有误!!请重试!!")
      continue

  ls = []#定义一个列表用于存储拆散的字符
  for s in string:
    ls.append(s)#将字符串拆散存进列表中
  for element in ls[:]:
    if element in var_ls:#如果在字符集合内发现,则从列表中删除
      ls.remove(element)
    elif element not in var_ls:
      continue
  String = ''#定义字符串
  for l in ls:#将列表中拆散的元素组合回去。
     String = String+l
  print("处理后的字符串:",String)#得到处理结果
Process(string=strings)#调用函数,传入实参给形参。

代码的解释在注释中写了,大家如果对代码不理解可以和我私信探讨。

运行结果,如下图:

总结

到此这篇关于python中文本字符处理的文章就介绍到这了,更多相关python文本字符处理内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯