I am trying to do this using list comprehension. I am using a subset of python 2.7 that does not allow the use of the command any or all
string_list1 = ['James Dean', 'Mr. James Dean', 'Jon Sparrow', 'Timothy Hook', 'Captain Jon Sparrow']
string_list2 = []
# Get elements that are a substring of other elements
for str1 in string_list1:
for str2 in string_list1:
if str1 in str2 and str1 != str2:
string_list2.append(str1)
print('Substrings: ', string_list2)
# remove element if another element is within it
for str2 in string_list2:
for str1 in string_list1:
if str2 in str1 and str2 != str1:
string_list1.remove(str1)
print('Desired: ', string_list1) # all elements that are unique
The result should be ['James Dean', 'Jon Sparrow', 'Timothy Hook'] basically the substrings and non substring elements