@sayth की स्वीकृत टिप्पणी पर टिप्पणी की गई थी कि मुझे यहां क्या आकर्षित किया गया है - मैं अजगर 2 और अजगर 3 स्क्रिप्ट लिखता हूं, और मैं सही नियम के खिलाफ या तो जांच करने में सक्षम होना चाहता हूं। pylint का उपयोग करके pip3 install pylint
एक छोटी स्क्रिप्ट लिखता है, /usr/local/bin
जो python3 दुभाषिया को आमंत्रित करता है, और लगता है, इसलिए सभी फ़ाइलों की जाँच करने के लिए मान लिया जाए कि पायथन 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')()
)
और फिर, क्योंकि मुझे गीन के "बिल्ड कमांड" मेनू से सीधे पाइलिंट का उपयोग करना पसंद है, और मैं अजगर 2 और अजगर 3 लिपियों के लिए अलग-अलग कमांड निर्दिष्ट नहीं कर सकता, मेरे पास भी है
~/bin/pylint
:
#!/bin/bash
if [[ $(head -n 1 "${@: -1}") == *python3* ]]
then
# python3 file
pylint3 "$@"
else
pylint2 "$@"
fi
जो शेबंग को सूँघ कर सही संस्करण भेजता है।
सही नहीं, निश्चित रूप से, लेकिन कार्यात्मक और, शायद, दूसरों के लिए उपयोगी।