Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

रनटाइम पर पायथन मॉड्यूल संस्करण कैसे जांचें?

रनटाइम पर मॉड्यूल संस्करण प्राप्त करने के लिए `pkg_resources` मॉड्यूल का उपयोग करें। PyPI से इंस्टॉल की गई किसी भी चीज़ में कम से कम एक संस्करण संख्या होनी चाहिए।

उदाहरण


>>> import pkg_resources
>>> pkg_resources.get_distribution("blogofile").version
'0.7.1'

महत्वपूर्ण नोट

पैकेज नाम PyPI एंट्री का होना चाहिए।
इसलिए `"pkg_resources.get_distribution('MySQLdb').version"` काम नहीं करेगा
लेकिन `"pkg_resources.get_distribution('mysql-python').version"` काम करेगा।

आधुनिक तरीका: importlib.metadata (पायथन 3.8+)

`pkg_resources` धीमा और भारी है। पायथन 3.8+ में, मानक लाइब्रेरी `importlib.metadata` का उपयोग करें:


import importlib.metadata

# संस्करण प्राप्त करें
version = importlib.metadata.version('requests')
print(version)  # '2.31.0'

# सभी मेटाडेटा
metadata = importlib.metadata.metadata('requests')
print(metadata['Summary'])
print(metadata['Author'])

पायथन 3.10+ के लिए


# संस्करण (कम ओवरहेड)
importlib.metadata.version('package_name')

# एंट्री पॉइंट्स
importlib.metadata.entry_points(group='console_scripts')

# फाइलें
importlib.metadata.files('package_name')

फॉलबैक पैटर्न (सभी संस्करण)


def get_version(package_name):
    """किसी भी पायथन संस्करण पर पैकेज संस्करण प्राप्त करें।"""
    try:
        # पायथन 3.8+
        import importlib.metadata
        return importlib.metadata.version(package_name)
    except (ImportError, ModuleNotFoundError):
        try:
            # पायथन 3.7 और पुराने
            import pkg_resources
            return pkg_resources.get_distribution(package_name).version
        except Exception:
            return None

# उपयोग
print(get_version('requests'))
print(get_version('numpy'))
print(get_version('nonexistent'))  # None

मॉड्यूल के `__version__` एट्रिब्यूट से

कुछ मॉड्यूल `__version__` एट्रिब्यूट उजागर करते हैं:


import requests
print(requests.__version__)  # यदि उपलब्ध हो

import numpy
print(numpy.__version__)

नोट: सभी मॉड्यूल में `__version__` नहीं होता। `importlib.metadata` अधिक विश्वसनीय है।

कमांड लाइन से


pip show requests | grep Version
python -c "import importlib.metadata; print(importlib.metadata.version('requests'))"
  1. - पायथन में पालिंड्रोम: कैसे जांचें कि कोई नंबर पालिंड्रोम है या नहीं

    पालिंड्रोम क्या है? एक पालिंड्रोम एक स्ट्रिंग है जो बाएं से दाएं पढ़ने पर या दाएं से बाएं पढ़ने पर समान होती है। दूसरे शब्दों में, एक पालिंड्रोम स्ट्रिंग वह है जिसका रिवर्स मूल स्ट्रिंग के बराबर होता है। उदाहरण के लिए, civic, madam पालिंड्रोम हैं। Cat पालिंड्रोम नहीं है। चूंकि इसका रिवर्स tac है,

  1. - पायथन में टेंसरफ्लो का उपयोग करके भविष्यवाणियों की जांच कैसे करें?

    टेंसरफ्लो का उपयोग predict मेथड और Numpy पैकेज में मौजूद argmax मेथड का उपयोग करके भविष्यवाणियों की जांच के लिए किया जा सकता है। और पढ़ें: टेंसरफ्लो क्या है और केरस टेंसरफ्लो के साथ न्यूरल नेटवर्क बनाने में कैसे काम करता है? एक न्यूरल नेटवर्क जिसमें कम से कम एक लेयर होती है, कन्वोल्यूशनल लेयर के

  1. पायथन में टेंसरफ्लो का उपयोग करके भविष्यवाणी की जांच कैसे करें? पायथन में टेंसरफ्लो का उपयोग करके भविष्यवाणी की जांच कैसे करें?

    टेंसरफ्लो का उपयोग matplotlib द्वारा ImageNet द्वारा की गई भविष्यवाणियों को विज़ुअलाइज़ करके, imshow मेथड का उपयोग करके भविष्यवाणी की जांच के लिए किया जा सकता है। और पढ़ें: टेंसरफ्लो क्या है और केरस टेंसरफ्लो के साथ न्यूरल नेटवर्क बनाने में कैसे काम करता है? एक न्यूरल नेटवर्क जिसमें कम से कम एक ल