Python tuple vs generator
问题 I am having a problem understanding why one of the following line returns generator and another tuple. How exactly and why a generator is created in the second line, while in the third one a tuple is produced? sample_list = [1, 2, 3, 4] generator = (i for i in sample_list) tuple_ = (1, 2, 3, 4) print type(generator) <type 'generator'> print type(tuple_) <type 'tuple'> Is it because tuple is immutable object and when I try to unpack list inside () , it can't create the tuple as it has to