全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

python字符串过滤性能比较5种方法

python字符串过滤性能比较5种方法比较

总共比较5种方法。直接看代码:

import random
import time
import os
import string

base = string.digits+string.punctuation
total = 100000

def loop(ss):
  """循环"""
  rt = ''
  for c in ss:
    if c in '0123456789':
      rt = rt + c
  return rt

def regular(ss):
  """正则表达式"""
  import re
  rt = re.sub(r'\D', '', ss)
  return rt

def filter_mt(ss):
  """函数式"""
  return filter(lambda c:c.isdigit(), ss)

def list_com(ss):
  """列表生成式"""
  isdigit = {'0': 1, '1': 1, '2': 1, '3': 1, '4': 1,
            '5':1, '6':1, '7':1, '8':1, '9':1}.has_key
  return ''.join([x for x in ss if isdigit(x)])

def str_tran(ss):
  """string.translate()"""
  table = string.maketrans('', '')
  ss = ss.translate(table,string.punctuation)
  return ss

if __name__ == '__main__':
  lst = []
  for i in xrange(total):
    num = random.randrange(10, 50)
    ss = ''
    for j in xrange(num):
      ss = ss + random.choice(base)
    lst.append(ss)

  s1 = time.time()
  map(loop,lst)
  print "loop: ",time.time() - s1
  print '*'*20
  s1 = time.time()
  map(regular, lst)
  print "regular: ", time.time() - s1
  print '*' * 20
  s1 = time.time()
  map(str_tran, lst)
  print "str_tran: ", time.time() - s1
  print '*' * 20
  s1 = time.time()
  map(filter_mt, lst)
  print "filter_mt: ", time.time() - s1
  print '*' * 20
  s1 = time.time()
  map(list_com, lst)
  print "list_com: ", time.time() - s1

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# python字符串过滤性能  # python字符串过滤性能比较  # Python sql注入 过滤字符串的非法字符实例  # Python中字符串String的基本内置函数与过滤字符模块函数的基本用法  # python实现mysql的单引号字符串过滤方法  # python过滤字符串中不属于指定集合中字符的类实例  # Python 过滤字符串的技巧  # map与itertools.imap  # Python中使用filter过滤列表的一个小技巧分享  # Python学习小技巧之列表项的推导式与过滤操作  # Python过滤列表用法实例分析  # Python中过滤字符串列表的方法  # 种方法  # 希望能  # 谢谢大家  # 正则表达式  # def  # loop  # punctuation  # total  # ss  # regular  # string  # return  # rt  # digits  # brush  # py  # class  # python  # pre  # import 


相关文章: 简单实现Android验证码  MySQL查询结果复制到新表的方法(更新、插入)  宝塔面板创建网站无法访问?如何快速排查修复?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  广东企业建站网站优化与SEO营销核心策略指南  红河网站制作公司,红河事业单位身份证如何上传?  如何选择高效便捷的WAP商城建站系统?  建站之星如何修改网站生成路径?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  如何解决VPS建站LNMP环境配置常见问题?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  公众号网站制作网页,微信公众号怎么制作?  平台云上自主建站:模板化设计与智能工具打造高效网站  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  临沂网站制作企业,临沂第三中学官方网站?  宝塔建站无法访问?如何排查配置与端口问题?  如何在万网主机上快速搭建网站?  如何快速生成橙子建站落地页链接?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  如何续费美橙建站之星域名及服务?  c++怎么用jemalloc c++替换默认内存分配器【性能】  网站制作公司,橙子建站是合法的吗?  如何用狗爹虚拟主机快速搭建网站?  ,柠檬视频怎样兑换vip?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  如何确保FTP站点访问权限与数据传输安全?  一键网站制作软件,义乌购一件代发流程?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  网站网页制作专业公司,怎样制作自己的网页?  如何快速搭建支持数据库操作的智能建站平台?  电商网站制作公司有哪些,1688网是什么意思?  如何基于云服务器快速搭建网站及云盘系统?  定制建站价位费用解析与套餐推荐全攻略  实现虚拟支付需哪些建站技术支撑?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  建站主机系统SEO优化与智能配置核心关键词操作指南  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何快速辨别茅台真假?关键步骤解析  高端网站建设与定制开发一站式解决方案 中企动力  清除minerd进程的简单方法  网站设计制作公司地址,网站建设比较好的公司都有哪些?  建站之星logo尺寸如何设置最合适?  建站主机是否属于云主机类型?  建站之星北京办公室:智能建站系统与小程序生成方案解析  郑州企业网站制作公司,郑州招聘网站有哪些?  济南企业网站制作公司,济南社保单位网上缴费步骤?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。