python3.4 python3.5 关于**kwargs

几天部署个项目, 在其他环境都能没有问题,唯独再一个测试环境又有问题,报错如下:

  File "./records/service.py", line 150
    **base_info,
               ^
SyntaxError: invalid syntax

我以为时符号写错了 ,但是检查过没有问题。

最后开了几个环境得不同点,唯独python得版本不同。于是做了测试:
Python 3.5.2

In [11]: def test(a=0, b=0): 
    ...:     print(a, b) 
    ...:                                                                                               

In [12]: kwargs = {"a":1}                                                                              

In [13]: test(**kwargs,b=1)                                                                            
1 1

Python 3.4.3

In [6]: def test(a=0, b=0):
   ...:     print(a,b)
   ...:     

In [7]: kwargs = {"a":1}

In [8]: test(**kwargs, b=1)
  File "", line 1
    test(**kwargs, b=1)
                 ^
SyntaxError: invalid syntax


In [9]: test(b=1, **kwargs)
1 1

。。。。。

你可能感兴趣的:(python)