summaryrefslogtreecommitdiff
path: root/Lib/csv.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2015-03-30 09:09:54 +0300
committerSerhiy Storchaka <storchaka@gmail.com>2015-03-30 09:09:54 +0300
commit7901b48a1f89b9bfa9d111ae3725400b466a9baa (patch)
tree4cebbcaeeb7b1f29f5440c7762f55bf3a57c0c54 /Lib/csv.py
parenta695f83f0de060a77352174be8a5c6f6500ab98a (diff)
downloadcpython-git-7901b48a1f89b9bfa9d111ae3725400b466a9baa.tar.gz
Issue #23171: csv.Writer.writerow() now supports arbitrary iterables.
Diffstat (limited to 'Lib/csv.py')
-rw-r--r--Lib/csv.py7
1 files changed, 2 insertions, 5 deletions
diff --git a/Lib/csv.py b/Lib/csv.py
index c3c31f01fd..ca40e5e0ef 100644
--- a/Lib/csv.py
+++ b/Lib/csv.py
@@ -147,16 +147,13 @@ class DictWriter:
if wrong_fields:
raise ValueError("dict contains fields not in fieldnames: "
+ ", ".join([repr(x) for x in wrong_fields]))
- return [rowdict.get(key, self.restval) for key in self.fieldnames]
+ return (rowdict.get(key, self.restval) for key in self.fieldnames)
def writerow(self, rowdict):
return self.writer.writerow(self._dict_to_list(rowdict))
def writerows(self, rowdicts):
- rows = []
- for rowdict in rowdicts:
- rows.append(self._dict_to_list(rowdict))
- return self.writer.writerows(rows)
+ return self.writer.writerows(map(self._dict_to_list, rowdicts))
# Guard Sniffer's type checking against builds that exclude complex()
try: