Есть список models состоящий из str и int:
models = ['chevrolet', 24, 'buick', 7, 'gmc', 7, 'cadillac', 6, 'daewoo', 0, 'geo', 0, 'holden', 0, 'hummer', 0, 'isuzu', 0, 'oldsmobil', 0, 'oldsmobile', 0, 'opel', 0, 'pontiac', 0, 'ravon', 0, 'saab', 0, 'saturn', 0, 'truck', 0, 'vauxhal', 0, 'vauxhall', 0]
Как оптимально (без многоступенчатого for) выбрать только те значения str, после которых int не равен 0 (при этом сам int исключить), т.е. в списке выше, нужно чтобы получилось
['chevrolet', 'buick', 'gmc', 'cadillac']