Você pode usar o módulo csv do Python para analisar mais do que apenas dados delimitados por vírgulas. Usando o argumento delimitador para que se encaixe em quase todas as situações. Por exemplo, lendo “/ etc / passwd” (usando Ipython e python3):
In [1]: import csv
In [2]: data = csv.reader(open("/etc/passwd"), delimiter=':')
In [3]: for d in data:
...: print(d)
...:
['root', 'x', '0', '0', 'root', '/root', '/bin/bash']
['bin', 'x', '1', '1', 'bin', '/bin', '/bin/false']
['daemon', 'x', '2', '2', 'daemon', '/sbin', '/bin/false']
['mail', 'x', '8', '12', 'mail', '/var/spool/mail', '/bin/false']
['ftp', 'x', '14', '11', 'ftp', '/srv/ftp', '/bin/false']
['http', 'x', '33', '33', 'http', '/srv/http', '/bin/false']
...
Você entendeu a ideia.