Выраженный как функция генератора:
def neighborhood(iterable):
iterator = iter(iterable)
prev_item = None
current_item = next(iterator) # throws StopIteration if empty.
for next_item in iterator:
yield (prev_item, current_item, next_item)
prev_item = current_item
current_item = next_item
yield (prev_item, current_item, None)
Использование:
for prev,item,next in neighborhood(l):
print prev, item, next
Мне понадобилось это около недели назад:
NSString * UTI = (NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension,
(CFStringRef)[myFilePath pathExtension],
NULL);
Если я запустил это в расширениях @ "php", @ "jpg", @ "html" и @ "ttf", он выводит:
public.php-script
public.jpeg
public.html
public.truetype-ttf-font