Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Python Collections (2016, retired 2019) Lists Removing items from a list

RM Hrdr
RM Hrdr
3,491 Points

messy_list

Hi Team Treehouse,

I've tried to use a list comprehension (found some threads thru StackOverflow) to remove the items in the list and seems to be working but I believe it's not an efficient way to code if I'm going to deal with a larger range of values, could you kindly help me on improving this type of approach?

Thank you.

lists.py
messy_list = ["a", 2, 3, 1, False, [1, 2, 3]]

# Your code goes below here

reshuffle = messy_list.pop(-3)
newList = messy_list.insert(0,reshuffle)

tidy_list = [item for item in messy_list if item != 'a' and item != 'False' and item != [1,2,3]]
print(tidy_list)

1 Answer

Zhaopeng Wang
seal-mask
PLUS
.a{fill-rule:evenodd;}techdegree seal-36
Zhaopeng Wang
Full Stack JavaScript Techdegree Graduate 32,210 Points
  • Python one line of code for each step
messy_list = ["a", 2, 3, 1, False, [1, 2, 3]]

# Your code goes below here
messy_list.insert(0, messy_list.pop(3))
messy_list = [i for i in messy_list if not isinstance(i, (bool, list, str))]
RM Hrdr
RM Hrdr
3,491 Points

Cool! Thank you for your help Wang!