changeset 19187:6171a678bc73

dict improvements: iteration args, dict comprehension
author Dmitry Selyutin <ghostmansd@gmail.com>
date Wed, 13 Sep 2017 00:46:58 +0300
parents 9924243d42f7
children 3ee261950584
files pygnulib/config.py pygnulib/filesystem.py pygnulib/module.py pygnulib/parser.py
diffstat 4 files changed, 11 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/pygnulib/config.py	Wed Sep 13 00:32:45 2017 +0300
+++ b/pygnulib/config.py	Wed Sep 13 00:46:58 2017 +0300
@@ -49,10 +49,8 @@
 
 
     def __init__(self, **kwargs):
-        self.__table = dict()
-        for key in Base._TABLE_:
-            self.__table[key] = Base._TABLE_[key]
-        for key, value in kwargs.items():
+        self.__table = dict(Base._TABLE_)
+        for (key, value) in kwargs.items():
             self[key] = value
 
 
@@ -489,7 +487,7 @@
     def __autoconf(self, autoconf):
         with _codecs_.open(autoconf, "rb", "UTF-8") as stream:
             data = stream.read()
-        for key, pattern in Cache._AUTOCONF_.items():
+        for (key, pattern) in Cache._AUTOCONF_.items():
             match = pattern.findall(data)
             if not match:
                 continue
--- a/pygnulib/filesystem.py	Wed Sep 13 00:32:45 2017 +0300
+++ b/pygnulib/filesystem.py	Wed Sep 13 00:46:58 2017 +0300
@@ -125,7 +125,7 @@
             names = []
             for name in files:
                 exclude = False
-                for key, method in Git._EXCLUDE_.items():
+                for (key, method) in Git._EXCLUDE_.items():
                     if method(name, key):
                         exclude = True
                         break
--- a/pygnulib/module.py	Wed Sep 13 00:32:45 2017 +0300
+++ b/pygnulib/module.py	Wed Sep 13 00:46:58 2017 +0300
@@ -39,10 +39,9 @@
     def __init__(self, name, **kwargs):
         _type_assert_("name", name, str)
         self.__name = name
-        self.__table = {"maintainers": ["all"]}
-        for key in Base._TABLE_:
-            self.__table[key] = ""
-        for key, value in kwargs.items():
+        self.__table = {k:"" for k in Base._TABLE_}
+        self.__table["maintainers"] = ["all"]
+        for (key, value) in kwargs.items():
             self.__table[key] = value
 
 
@@ -279,7 +278,7 @@
 
     def __str__(self):
         result = ""
-        for key, (_, typeid, field) in sorted(Base._TABLE_.items(), key=lambda k: k[1][0]):
+        for (key, (_, typeid, field)) in sorted(Base._TABLE_.items(), key=lambda k: k[1][0]):
             field += ":\n"
             if typeid is list:
                 value = "\n".join(self.__table[key])
@@ -335,12 +334,12 @@
 
 
     def __init__(self, path, mode="r", name=None, **kwargs):
+        table = {}
         if name is None:
             name = _os_.path.basename(path)
         if mode not in ("r", "w", "rw"):
             raise ValueError("illegal mode: %r" % mode)
         if mode == "r":
-            table = {}
             with _codecs_.open(path, "rb", "UTF-8") as stream:
                 data = ""
                 for line in stream:
--- a/pygnulib/parser.py	Wed Sep 13 00:32:45 2017 +0300
+++ b/pygnulib/parser.py	Wed Sep 13 00:46:58 2017 +0300
@@ -88,7 +88,7 @@
             if hasattr(namespace, "mode"):
                 mode = getattr(namespace, "mode")
                 if not self.__flags & mode and mode != CommandLine._HELP_:
-                    mode = ("--" + dict((_[0], _[1]) for _ in CommandLine._MODES_)[mode])
+                    mode = "--" + {k:v for (k, v, _) in CommandLine._MODES_}[mode]
                     fmt = "argument {0}: not allowed with {1}"
                     parser.error(fmt.format(mode, option))
 
@@ -933,7 +933,7 @@
             fmt = "unrecognized arguments: {0}"
             arguments = " ".join(arguments)
             self.__parser.error(fmt.format(arguments))
-        mode = dict((_[0], _[1]) for _ in CommandLine._MODES_)[mode]
+        mode = {k:v for (k, v, _) in CommandLine._MODES_}[mode]
         verbosity = namespace.pop("verbosity", 0)
         if namespace.pop("dry_run", False):
             options |= CommandLine.Option.DryRun