Here's the trick: you need to track what you've already seen. For each element, if you haven't seen it before, add it to your result and mark it as seen. If you have seen it, skip it.
Two approaches:
Use a list to track seen values and check membership with in. This runs in time and space.
Use a set for membership checks. This runs in time and space.
For learning, start with the list approach: create an empty result list. For each element in the input, if it's not in result, append it. Return result. The element is added only on first occurrence.