허용 된 답변에 대한 @sayth의 의견은 여기에 끌린 것입니다. 파이썬 2와 파이썬 3 스크립트를 모두 작성하고 올바른 규칙 세트와 비교하여 확인하고 싶습니다. pylint를 사용하여 설치 하면 python3 인터프리터를 호출 pip3 install pylint
하는 짧은 스크립트를 작성 /usr/local/bin
하므로 검사 할 모든 파일이 python 3 스크립트라고 가정합니다.
이 문제를 해결하기 위해 이제 다음 파일이 있습니다.
~/bin/pylint2
:
#!/usr/bin/python2
# EASY-INSTALL-ENTRY-SCRIPT: 'pylint','console_scripts','pylint'
__requires__ = 'pylint'
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.exit(
load_entry_point('pylint', 'console_scripts', 'pylint')()
)
그리고 ~/bin/pylint3
:
#!/usr/bin/python3
# EASY-INSTALL-ENTRY-SCRIPT: 'pylint','console_scripts','pylint'
__requires__ = 'pylint'
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.exit(
load_entry_point('pylint', 'console_scripts', 'pylint')()
)
그런 다음 Geany의 "빌드 명령"메뉴에서 직접 pylint를 사용하고 python 2 및 python 3 스크립트에 대해 다른 명령을 지정할 수 없으므로 다음과 같은 사항도 있습니다
~/bin/pylint
.
#!/bin/bash
if [[ $(head -n 1 "${@: -1}") == *python3* ]]
then
# python3 file
pylint3 "$@"
else
pylint2 "$@"
fi
shebang을 스니핑하여 올바른 버전을 전달합니다.
완벽하지는 않지만 기능적이며 다른 사람들에게 유용 할 수 있습니다.