Here's what I came up with (Python 3, but I think the only difference should be my print function. You can from __future__ import print_function
if you want to use it to write to the output file):
import collections
# I used variable "input" to hold the string from your example .tsv contents;
# you'd really want to read it in from a file.
D = collections.OrderedDict()
for line in input.splitlines():
key, value = line.split('\t')
if key not in D:
D[key] = []
D[key].append(value.strip())
for key, values in D.items():
print(key, ','.join(values), sep='\t')
My output is:
Actrius 1990s drama films,Catalan language films,Spanish films,Barcelona in fiction,Films directed by Ventura Pons,1996 films
An_American_in_Paris Compositions by George Gershwin,Symphonic poems,Grammy Hall of Fame Award recipients