我使用python执行linux shell命令。
我在上述行中得到以下错误 -
E501 line too long (99 > 79 characters)
代码:
ssh_client.exec_command(
"sudo grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}'")
我不确定如何将该行格式化为Linux命令。
答案 0 :(得分:2)
连续的字符串文字(仅由空格分隔)在Python中合并为一个。所以:
ssh_client.exec_command(
"sudo grep 'cpu ' /proc/stat | "
"awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}'")
答案 1 :(得分:2)
shell命令没有返回错误。发生了什么事情是你有一种叫做linter的源代码分析工具(特别是在这种情况下,对我来说看起来像flake8)强制遵守Python最佳实践(la PEP-8)。 PEP-8指定代码行应为79个字符或更少。由于该行超过79个字符,因此linter会抱怨。
如果在特定情况下您发现符合PEP-8或其他已建立的社区最佳实践会使您的代码不易读取,您可以标记一行代码# noqa
以告诉linter忽略它:
some_gnarly_line_of_code() # noqa
minitech的答案在这种情况下是正确的,但是要注意在特殊情况下你有自由解决破坏构建的linter投诉是有帮助的!