python过滤字符串中不属于指定集合中字符的类实例

yipeiwu_com6年前Python基础

本文实例讲述了python过滤字符串中不属于指定集合中字符的类。分享给大家供大家参考。具体如下:

# -*- coding: utf-8 -*-
import sets
class Keeper(object):
  def __init__(self, keep):
    self.keep = sets.Set(map(ord, keep))
  def __getitem__(self, n):
    if n not in self.keep:
      return None
    return unichr(n)
  def __call__(self, s):
    return s.translate(self)
makefilter = Keeper
if __name__ == '__main__':
  just_vowels = makefilter('aeiouy')
  print just_vowels(u'four score and seven years ago')
  # 输出: ouoeaeeyeaao
  print just_vowels(u'tiger, tiger burning bright')
  # 输出: ieieuii

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python3 assert 断言的使用详解 (区别于python2)

python3 和python以前的版本有点不同 如果你断言的 语句正确 则什么反应都没有 但是如果你出错之后 就会报出 AssertionError 并且错误可以自己填写 格式 :...

用python求一个数组的和与平均值的实现方法

如下所示: # coding = GBK a =[1,2,3,4,5] sum=0 b = len(a) print("这个数组的长度为:",b) for i in a:...

python中类的输出或类的实例输出为<__main__类名 object at xxxx>这种形式的原因

python中类的输出或类的实例输出为<__main__类名 object at xxxx>这种形式的原因

原因: __str__()这个特殊方法将对象转换为字符串的结果 效果图: 代码:  # 定义一个Person类 class Person(object): """人类...

在Python中操作列表之List.append()方法的使用

 append()方法追加传递obj到现有的列表。 语法 以下是append()方法的语法: list.append(obj) 参数   &...

深入解析Python中的线程同步方法

同步访问共享资源 在使用线程的时候,一个很重要的问题是要避免多个线程对同一变量或其它资源的访问冲突。一旦你稍不留神,重叠访问、在多个线程中修改(共享资源)等这些操作会导致各种各样的问题;...