每天开心一点

Python:每日一题 65

2017-11-27 13:55:00    六月    587    来源: http://bbs.fishc.com/thread-88827-1-1.html

  1. unique_in_order('AAAABBBCCDAABBB') == ['A', 'B', 'C', 'D', 'A', 'B']
  2. unique_in_order('ABBCcAD')         == ['A', 'B', 'C', 'c', 'A', 'D']
  3. unique_in_order([1,2,2,3,3])       == [1,2,3]
复制代码


我觉得例子已经足以说明一切了。注意,给定字符串可以为空。

其实出这个题我主要是想引入这个东西:

  1. >>> for key, group in itertools.groupby('AAABBBCCAAA'):
  2. ...     print(key, list(group))
  3. ...
  4. A ['A', 'A', 'A']
  5. B ['B', 'B', 'B']
  6. C ['C', 'C']
  7. A ['A', 'A', 'A']
复制代码


你们再看看呢。

您是VIP用户,您可免回复查看本帖隐藏的内容

  1. def unique_in_order(iterable):
  2.     return [k for (k, _) in groupby(iterable)]
复制代码