Python DjangoがSyntaxErrorを報告します:ジェネレータ式は括弧で囲まれたソリューションである必要があります



Python Django Reports Syntaxerror



Traceback (most recent call last): File 'manage.py', line 22, in execute_from_command_line(sys.argv) File 'D:lijingwenPythonPython37libsite-packagesdjangocoremanagement\__init__.py', line 364, in execute_from_command_line utility.execute() File 'D:lijingwenPythonPython37libsite-packagesdjangocoremanagement\__init__.py', line 338, in execute django.setup() File 'D:lijingwenPythonPython37libsite-packagesdjango\__init__.py', line 27, in setup apps.populate(settings.INSTALLED_APPS) File 'D:lijingwenPythonPython37libsite-packagesdjangoapps egistry.py', line 85, in populate app_config = AppConfig.create(entry) File 'D:lijingwenPythonPython37libsite-packagesdjangoappsconfig.py', line 94, in create module = import_module(entry) File 'D:lijingwenPythonPython37libimportlib\__init__.py', line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File '', line 1006, in _gcd_import File '', line 983, in _find_and_load File '', line 967, in _find_and_load_unlocked File '', line 677, in _load_unlocked File '', line 728, in exec_module File '', line 219, in _call_with_frames_removed File 'D:lijingwenPythonPython37libsite-packagesdjangocontribadmin\__init__.py', line 4, in from django.contrib.admin.filters import ( File 'D:lijingwenPythonPython37libsite-packagesdjangocontribadminfilters.py', line 10, in from django.contrib.admin.options import IncorrectLookupParameters File 'D:lijingwenPythonPython37libsite-packagesdjangocontribadminoptions.py', line 12, in from django.contrib.admin import helpers, widgets File 'D:lijingwenPythonPython37libsite-packagesdjangocontribadminwidgets.py', line 152 '%s=%s' % (k, v) for k, v in params.items(), ^ SyntaxError: Generator expression must be parenthesized

理由:

django 1.11バージョンがpython3.7バージョンと互換性がないことが原因である可能性があります。この問題は、後続のバージョンで変更されているようです。

解決:

File 'D:lijingwenPythonPython37libsite-packagesdjangocontribadminwidgets.py', line 152 '%s=%s' % (k, v) for k, v in params.items(),

彼はこれについて話しているwidgets.pyファイルが間違っている。上記を入力するだけ.items(),この後にカンマを削除するか、django2.0以降にアップグレードする



参照リンク:

https://www.cnblogs.com/yanlin-10/p/9714793.html
https://www.cnblogs.com/linga/p/9705893.html