Python में कीस्ट्रोक का पता लगाना इंटरैक्टिव एप्लिकेशन, गेम और ऑटोमेशन स्क्रिप्ट बनाने के लिए एक बुनियादी कौशल है। Python इसे प्राप्त करने के लिए कई लाइब्रेरी प्रदान करता है, प्रत्येक की अपनी ताकत और कमजोरियाँ हैं। यह लेख तीन लोकप्रिय विकल्पों का पता लगाता है: keyboard
, pynput
, और readchar
मॉड्यूल, उनकी सुविधाओं की तुलना करते हुए और व्यावहारिक उदाहरण प्रदान करते हैं।
विषयवस्तु की तालिका
keyboard
मॉड्यूल का उपयोग करनाpynput
मॉड्यूल का उपयोग करनाreadchar
मॉड्यूल का उपयोग करना- मॉड्यूल की तुलना
- निष्कर्ष
keyboard
मॉड्यूल का उपयोग करना
keyboard
मॉड्यूल कीबोर्ड इवेंट को संभालने के लिए एक उपयोगकर्ता के अनुकूल इंटरफ़ेस प्रदान करता है। इसका उपयोग करना अपेक्षाकृत सरल है और यह अच्छा क्रॉस-प्लेटफ़ॉर्म संगतता प्रदान करता है। हालाँकि, कुछ सिस्टम पर इसे व्यवस्थापक विशेषाधिकारों की आवश्यकता हो सकती है।
स्थापना: pip install keyboard
import keyboard
def on_press(event):
print(f'दबाया गया कुंजी: {event.name}')
keyboard.on_press(on_press)
keyboard.wait() # Ctrl+C दबाए जाने तक ब्लॉक करता है
pynput
मॉड्यूल का उपयोग करना
pynput
एक अधिक व्यापक लाइब्रेरी है जो कीबोर्ड और माउस दोनों इनपुट पर नियंत्रण प्रदान करती है। यह अपनी मजबूती और विस्तृत घटना जानकारी के लिए जाना जाता है, जिसमें कुंजी रिलीज इवेंट भी शामिल हैं।
स्थापना: pip install pynput
from pynput import keyboard
def on_press(key):
try:
print(f'दबाया गया कुंजी: {key.char}')
except AttributeError:
print(f'विशेष कुंजी दबाया गया: {key}')
def on_release(key):
if key == keyboard.Key.esc:
return False # श्रोता को रोकें
with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
listener.join()
readchar
मॉड्यूल का उपयोग करना
readchar
कीबोर्ड इनपुट के लिए एक निम्न-स्तरीय, वर्ण-दर-वर्ण दृष्टिकोण प्रदान करता है। यह पिछले विकल्पों की तुलना में सरल है लेकिन कम सुविधा-सम्पन्न है और सभी अनुप्रयोगों के लिए उपयुक्त नहीं हो सकता है। यह विशेष रूप से उपयोगी है जब आपको एकल वर्ण इनपुट पर बहुत सटीक नियंत्रण की आवश्यकता होती है।
स्थापना: pip install readchar
import readchar
while True:
key = readchar.readchar()
print(f"दबाया गया कुंजी: {key}")
if key == 'x1b': # Esc कुंजी
break
मॉड्यूल की तुलना
यहाँ तीन मॉड्यूल की तुलना करने वाली सारांश तालिका दी गई है:
मॉड्यूल | सुविधाएँ | जटिलता | क्रॉस-प्लेटफ़ॉर्म संगतता |
---|---|---|---|
keyboard |
सरल, उपयोग में आसान, अच्छा क्रॉस-प्लेटफ़ॉर्म समर्थन | कम | अच्छा |
pynput |
व्यापक, विस्तृत घटनाएँ, मजबूत | मध्यम | अच्छा |
readchar |
निम्न-स्तरीय, वर्ण-दर-वर्ण इनपुट | कम | अच्छा |
निष्कर्ष
Python में कीस्ट्रोक का पता लगाने के लिए सबसे अच्छा मॉड्यूल आपकी विशिष्ट आवश्यकताओं पर निर्भर करता है। keyboard
सरल अनुप्रयोगों के लिए आदर्श है; pynput
अधिक जटिल परिदृश्यों के लिए उपयुक्त है जिसके लिए विस्तृत घटना जानकारी की आवश्यकता होती है; और readchar
विशिष्ट उपयोग के मामलों के लिए एक बुनियादी, निम्न-स्तरीय समाधान प्रदान करता है। अपनी पसंद करते समय जटिलता, क्रॉस-प्लेटफ़ॉर्म संगतता और आवश्यक कार्यक्षमता जैसे कारकों पर विचार करें।