检測字符串之间的包括

本文地址: http://blog.csdn.net/caroline_wendy/article/details/27048955

Python中, 能够检測字符串之间的包括问题.

containsAny, 仅仅要包括不论什么一个字符就可以;

containsOnly, 所有字符都包括在内;

containsAll, 包括所有;

代码:

# -*- coding: utf-8 -*-

'''
Created on 2014.5.25 @author: C.L.Wang
''' '''存在不论什么'''
def containsAny(seq, aset):
for c in seq:
if c in aset: return True
return False import itertools
def containsAny2(seq, aset):
for item in itertools.ifilter(aset.__contains__, seq) :
return True
return False def containsAny3(seq, aset):
return bool(set(aset).intersection(seq)) '''所有存在'''
def containsOnly(seq, aset):
for c in seq:
if c not in aset: return False
return True '''包括所有'''
def containsAll(seq, aset):
#print(set(aset).difference(seq))
return not set(aset).difference(seq) import string
notrans = string.maketrans('', '')
def containsAny4(astr, strset):
return len(strset) != len(strset.translate(notrans, astr)) def containsAll2(astr, strset):
return not strset.translate(notrans, astr) if __name__ == '__main__':
L1 = [1, 2, 3, 4]
L2 = [5, 6, 7, 8]
L3 = [1, 4, 7, 10]
print("L1 constains any in L2 : " + str(containsAny(L1, L2)))
print("L1 constains any in L3 : " + str(containsAny(L1, L3))) print("L1 constains any in L2 (2) : " + str(containsAny2(L1, L2)))
print("L1 constains any in L3 (2) : " + str(containsAny2(L1, L3))) print("L1 constains any in L2 (3) : " + str(containsAny3(L1, L2)))
print("L1 constains any in L3 (3) : " + str(containsAny3(L1, L3))) L4 = [1, 1, 2, 2, 3, 4]
L5 = [1, 1, 2, 2, 3, 4, 5] print("L1 constains only in L4 : " + str(containsOnly(L1, L4)))
print("L1 constains only in L5 : " + str(containsOnly(L1, L5))) print("L1 constains all in L4 (2) : " + str(containsAll(L1, L4)))
print("L1 constains all in L5 (2) : " + str(containsAll(L1, L5))) pass

输出:

L1 constains any in L2 : False
L1 constains any in L3 : True
L1 constains any in L2 (2) : False
L1 constains any in L3 (2) : True
L1 constains any in L2 (3) : False
L1 constains any in L3 (3) : True
L1 constains only in L4 : True
L1 constains only in L5 : True
L1 constains all in L4 (2) : True
L1 constains all in L5 (2) : False

Python - 检測字符串之间的包括的更多相关文章

  1. python 日期与字符串之间的转换

    1.str转换为datetime >>> from datetime import datetime >>> cday = datetime.strptime('2 ...

  2. 使用nodeitk进行角点检測

    前言 东莞,晴,33至27度.今天天气真好,学生陆续离开学校.忙完学生答辩事情,最终能够更新一下nodeitk.本文继续介绍node的特征识别相关内容,你会看到,採用nodeitk实现角点检測是一件十 ...

  3. Python图像处理(8):边缘检測

    快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 此前已经得到了单个区域植株图像,接下来似乎应该尝试对这些区域进行分类识别.通过外形和叶脉进行植物种 ...

  4. Python中的列表,元组,字符串之间的相互转化

    Python中的列表元组和字符串之间的相互转化需要利用,tuple(),list(),str(). 示例如下: >>> the_string = "hello I'am x ...

  5. Python下opencv使用笔记(七)(图像梯度与边缘检測)

    梯度简单来说就是求导,在图像上表现出来的就是提取图像的边缘(无论是横向的.纵向的.斜方向的等等),所须要的无非也是一个核模板.模板的不同结果也不同.所以能够看到,全部的这些个算子函数,归结究竟都能够用 ...

  6. Python十六进制与字符串的转换

    电脑上装了Python2.7和3.3两个版本,平时运行程序包括在Eclipse里面调试都会使用2.7,但是由于某些原因在cmd命令行中输入python得到的解释器则是3.3, 一直没对此做处理,因为这 ...

  7. 【从零学习openCV】IOS7下的人脸检測

    前言: 人脸检測与识别一直是计算机视觉领域一大热门研究方向,并且也从安全监控等工业级的应用扩展到了手机移动端的app,总之随着人脸识别技术获得突破,其应用前景和市场价值都是不可估量的,眼下在学习ope ...

  8. C++内存泄露检測原理

    转自:http://hi.baidu.com/jasonlyy/item/9ca0cecf2c8f113a99b4981c 本文针对 linux 下的 C++ 程序的内存泄漏的检測方法及事实上现进行探 ...

  9. Python学习笔记整理(四)Python中的字符串..

    字符串是一个有序的字符集合,用于存储和表现基于文本的信息. 常见的字符串常量和表达式 T1=‘’ 空字符串 T2="diege's" 双引号 T3=""&quo ...

随机推荐

  1. mygenerator().next() AttributeError: 'generator' object has no attribute 'next'

    def mygenerator(): print ("start ...") yield 5 mygenerator() print ("mygenerator():&q ...

  2. 文字水平居中和垂直居中的CSS

    首先选择一个需要显示文字的选择器,我这里选择的是微信小程序里面的<view>选择器,在其他语言(如html)的选择器里是一样的做法: <view class="btn-it ...

  3. Android第三方登陆之新浪微博Weibo篇(原生登陆授权)

    前言 Android第三方登录可以说是非常的常见,今天主要先说一下新浪微博第三方登陆授权. SDK版本支持 SDK v3.0已经发布了支持iPhone和Android的版本. 须将你的应用的包名签名信 ...

  4. (转载)实例详解Android快速开发工具类总结

    实例详解Android快速开发工具类总结 作者:LiJinlun 字体:[增加 减小] 类型:转载 时间:2016-01-24我要评论 这篇文章主要介绍了实例详解Android快速开发工具类总结的相关 ...

  5. Eclipse代码自动提示(内容辅助content assist)

    Eclipse中默认是输入"."后出现自动提示,用于类成员的自动提示,可是有时候我们希望它能在我们输入类的首字母后就出现自动提示,可以节省大量的输入时间(虽然按alt + /会出现 ...

  6. OpenCV: Kmeans的使用一维和二维点集

    OpenCVKmeans算法默认使用了Kmeans++选取种子点 参考:OpenCv中Kmeans算法实现和使用 //效果:根据半径聚类,并不一定能得到好的结果. float CBlotGlint:: ...

  7. 在MFC中使用Cstring

    此文介绍了关于MFC使用CString的资料,可一参考一下. 转自于VC知识库:http://www.vckbase.com/index.php/wv/829 通过阅读本文你可以学习如何有效地使用 C ...

  8. excel 打开显示安装office自定义项 安装期间出错的解决方法

    用管理员身份运行EXCEL,转到COM加载项,删除对应加载项,即可. 注:上下两张图中的加载项信息不一致,仅作图示参考.

  9. HDU_1850_nim游戏

    Being a Good Boy in Spring Festival Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32 ...

  10. POST请求成功,但接口返回数据不正确

    事件:使用Jmeter做APP的搜索接口测试,请求成功了,但无论keyword是什么“内容”(这里的内容是带引号的哦),接口返回的内容都是:未匹配到搜索结果 排查问题: keyword=“世界” st ...