Your code is almost correct. The only issue is the usage of list comprehension.
If you use like: (x[0] for x in lst), it returns a generator object. If you use like: [x[0] for x in lst], it return a list.
When you append the list comprehension output to a list, the output of list comprehension is the single element of the list.
lst = [["a","b","c"], [1,2,3], ["x","y","z"]]
lst2 = []
lst2.append([x[0] for x in lst])
print lst2[0]
lst2 = [['a', 1, 'x']]
lst2[0] = ['a', 1, 'x']
Please let me know if I am incorrect.