Commits

Alan Falloon committed 64edf3c

Add support for * in assignments

For example:
a, *b = range(3)
*a, b = range(3)
a, *b, c = range(4)

  • Participants
  • Parent commits 3567b2c

Comments (0)

Files changed (2)

File pyflakes/checker.py

 
     # "expr" type nodes
     BOOLOP = BINOP = UNARYOP = IFEXP = DICT = SET = YIELD = COMPARE = \
-    CALL = REPR = ATTRIBUTE = SUBSCRIPT = LIST = TUPLE = handleChildren
+    CALL = REPR = ATTRIBUTE = SUBSCRIPT = LIST = TUPLE = STARRED = handleChildren
 
     NUM = STR = BYTES = ELLIPSIS = ignore
 

File pyflakes/test/test_undefined_names.py

             print(a, b, c)
         ''')
 
+    def test_definedAsStarUnpack(self):
+        '''star names in unpack are defined'''
+        self.flakes('''
+        a, *b = range(10)
+        print(a, b)
+        ''')
+        self.flakes('''
+        *a, b = range(10)
+        print(a, b)
+        ''')
+        self.flakes('''
+        a, *b, c = range(10)
+        print(a, b, c)
+        ''')
+
     def test_keywordOnlyArgs(self):
         '''kwonly arg names are defined'''
         self.flakes('''