You don't get unique values that way, unless they are unique to start with. In the following example, I got a gazillion values until I converted the list to a set (and optionally sorted). From there, construct your query as Joshua Bixby indicated
>>> import arcpy
>>> fc = "C:\SomePath\SomeFile.shp"
>>> fld = "subclass"
>>> values = [row[0] for row in arcpy.da.SearchCursor(fc, (fld))]
>>> unique_values_set = set(values)
>>> unique_values_set
set([u'ARTERIAL', u'TRANSITWAY', u'LOCAL', u'RAMP', u'CONNECTOR', u'MAJCOLLECTOR', u'HIGHWAY', u'COLLECTOR', u'CHANNEL'])
>>>
>>> unique_values_list = list(set(values)) # convert the set to a list and sort
>>> unique_values_list
[u'ARTERIAL', u'TRANSITWAY', u'LOCAL', u'RAMP', u'CONNECTOR', u'MAJCOLLECTOR', u'HIGHWAY', u'COLLECTOR', u'CHANNEL']
Just to be on the safe side... 'set' is a useful tool but it is unordered like dictionaries