Sets Vs Lists Python Programmer Tips

Sets Vs Lists Python Programmer Tips

Sets are only useful when trying to ensure unique items are preserved. Before sets were available, it was common to process items and check if they exist in a list (or dictionary) before adding them.

List example

Here unique is an empty list. Every time I compare with this list, and if it is not duplicated then the input item will append to the unique list. 

>>> unique = [] 
>>> for name in ['srini', 'srini', 'rao', 'srini']:
 ... if name not in unique: 
... unique.append(name) 
... >>> unique ['srini', 'rao']

There is no need to do this when using sets. Instead of appending you add to a set:

Set example

>>> for name in ['srini', 'srini', 'rao', 'srini']:
... unique.add(name) 
>>> unique {'srini', 'rao'}

Just like tuples and lists, interacting with sets have some differences on how to access their items. You can't index them like lists and tuples, but you can iterate over them without issues. 

The only reason I use sets is to ensure there aren't any duplicates. If that is not needed, a list is preferable.

Related Posts


Most Popular

7 AWS Interview Questions asked in Infosys, TCS

Hyperledger Fabric: 20 Real Interview Questions

How to Fix Python Syntax Errors Quickly