দ্রুত সংস্করণ (কেবল প্যাকেজ পরীক্ষা করা হচ্ছে)
নীচের কোডটি অনুপলব্ধ সংস্করণের মতো প্যাকেজটিকে কল করে pip install package_name==random
। কল সমস্ত উপলব্ধ সংস্করণ প্রদান করে। প্রোগ্রামটি সর্বশেষ সংস্করণ পড়ে reads
প্রোগ্রামটি তখন pip show package_name
প্যাকেজের বর্তমান সংস্করণে চলে এবং পায়।
যদি এটি কোনও মিল খুঁজে পায়, তবে এটি সত্য, অন্যথায় মিথ্যা প্রত্যাবর্তন করে।
এটি নির্ভরযোগ্য একটি বিকল্প যা এটি স্থির থাকে pip
import subprocess
import sys
def check(name):
latest_version = str(subprocess.run([sys.executable, '-m', 'pip', 'install', '{}==random'.format(name)], capture_output=True, text=True))
latest_version = latest_version[latest_version.find('(from versions:')+15:]
latest_version = latest_version[:latest_version.find(')')]
latest_version = latest_version.replace(' ','').split(',')[-1]
current_version = str(subprocess.run([sys.executable, '-m', 'pip', 'show', '{}'.format(name)], capture_output=True, text=True))
current_version = current_version[current_version.find('Version:')+8:]
current_version = current_version[:current_version.find('\\n')].replace(' ','')
if latest_version == current_version:
return True
else:
return False
নিম্নলিখিত কোডগুলির জন্য কল করা হয়েছে pip list --outdated
:
import subprocess
import sys
def check(name):
reqs = subprocess.check_output([sys.executable, '-m', 'pip', 'list','--outdated'])
outdated_packages = [r.decode().split('==')[0] for r in reqs.split()]
return name in outdated_packages