ошибка понимания словаря с файлом CSV - PullRequest
0 голосов
/ 17 июня 2020

Я слежу за книгой, и меня смущает синтаксис

данные

['a', 'b', 'c']
['1', '2', '3']
['1', '2', '3', '4']

Синтаксис:

In [894]: lines = list(csv.reader(open('ch06/ex7.csv')))
In [895]: header, values = lines[0], lines[1:]
In [896]: data_dict = {h: v for h, v in zip(header, zip(*values))}
In [897]: data_dict
Out[897]: {'a': ('1', '1'), 'b': ('2', '2'), 'c': ('3', '3')}

Меня смущает функция zip в понимании словаря в строке 896.

  1. Что делает функция zip ()?
  2. Почему функция zip вложена в более крупную функцию zip?
  3. Почему * необходимо?
...