当我执行pylint main.py时,我得到以下错误:
E: 7, 0: invalid syntax (<string>, line 7) (syntax-error)
# main.py
import os
repo = os.environ.get('GITHUB_REPOSITORY')
branch = os.environ.get('GITHUB_REF')
commit = os.environ.get('GITHUB_SHA')
commit_url = f'https://github.com/{repo}/commit/{commit}'
repo_url = f'https://github.com/{repo}/tree/{branch}'
print(commit_url, repo_url)代码按预期运行,但是pylint给出了这个奇怪的错误。我在Ubuntu 18.04上使用Python 3.6.9。
发布于 2020-07-20 00:32:59
看起来PyLint对您的f字符串(在3.6中引入)并不满意,并且正在验证旧版本的语法。我会检查您使用的PyLint是否运行在与运行程序的Python相同的Python环境中。我猜它是从你的系统Python运行的,而你的程序是从一个虚拟环境运行的。
对于Pylint2.5.3和Python3.8.2,pylint唯一的抱怨就是缺少模块文档字符串。
************* Module main
main.py:1:0: C0114: Missing module docstring (missing-module-docstring)
-----------------------------------
Your code has been rated at 8.57/10发布于 2020-07-19 17:45:16
如下所示使用.format方法
import os
repo = os.environ.get('GITHUB_REPOSITORY')
branch = os.environ.get('GITHUB_REF')
commit = os.environ.get('GITHUB_SHA')
commit_url = 'https://github.com/{}/commit/{}'.format(repo, commit)
repo_url = 'https://github.com/{}/tree/{}'.format(repo, branch)
print(commit_url, repo_url)检查这里,Python 3 returns "invalid syntax" when trying to perform string interpolation
https://stackoverflow.com/questions/62978497
复制相似问题