cmd
मॉड्यूल आपके प्रोग्राम में कमांड लाइन इंटरफ़ेस बनाने के लिए एक बहुत ही सरल इंटरफ़ेस प्रदान करता है। हो सकता है कि यह कुछ बफर वर्णों को अगली पंक्ति के सामने न रखने में सक्षम न हो, लेकिन यदि आप अपने उपयोगकर्ताओं को यह बताने के लिए एक स्पष्ट तरीका ढूंढ रहे हैं कि आदेश वापस आ गया है, तो यह प्रत्येक की शुरुआत में एक शेल-जैसी प्रॉम्प्ट प्रदान कर सकता है लाइन। आप पहले से ही कार्य करता है, तो अपने कार्यक्रम के लिए परिभाषित किया गया है, उनमें एक प्रोसेसर में एकीकृत समारोह का उपयोग है कि एक हैंडलर लेखन की बात होगी:
import cmd
import math
def findHpyot(length, height):
return math.sqrt(length **2 + height **2)
class MathProcessor(cmd.Cmd):
prompt = "Math>"
def do_hypot(self, line):
x = raw_input("Length:")
y = raw_input("Height:")
if x and y:
try:
hypot = findHypot(float(x), float(y))
print "Hypot:: %.2f" %hypot
except ValueError:
print "Length and Height must be numbers"
def do_EOF(self, line):
return True
def do_exit(self, line):
return True
def do_quit(self, line):
return True
if __name__ == "__main__":
cmdProcessor = MathProcessor()
cmdProcessor.cmdloop()
चीजें जब cmd
का उपयोग कर एक इंटरैक्टिव खोल लिखने पर विचार करने के लिए
- do_ के बाद का नाम वह आदेश है जो आपके उपयोगकर्ता उपयोग करेंगे ताकि इस उदाहरण में उपलब्ध आदेश हाइपोट, बाहर निकलें, छोड़ें और सहायता करें।
- do_help अधिभावी, मदद बुला आप इस कार्यक्रम सच
- लौटना चाहिए आप समारोह कॉल से प्रविष्टियां कार्रवाई करने के लिए चाहते हैं, तो उपलब्ध आदेशों
- किसी भी कॉल है कि आप छोड़ना चाहते की एक सूची दे देंगे बिना, आप चाहते थे कहना जैसा कॉल संभालने में सक्षम हो "hypot 3 4" तुम क्यों एक कंसोल अनुप्रयोग के रूप में इस बनाने के समारोह कॉल
में स्थानीय लाइन चर का उपयोग कर सकते हैं? (ऐसा लगता है जैसे यह एक और दृष्टिकोण के लायक हो सकता है)। यदि आप चाहते हैं कि उपयोगकर्ता कंसोल के चारों ओर कर्सर को स्वतंत्र रूप से ले जाएं, तो आप केवल अंतर्निहित तरीकों के बजाय ncurses का उपयोग करना चाहेंगे। –
यह किस प्लेटफॉर्म पर चल रहा है? यदि लिनक्स, तो आप रीडलाइन मॉड्यूल का उपयोग कर देख सकते हैं। – Keith
एक [pyreadline] (http://pypi.python.org/pypi/pyreadline) है जो विंडोज पर काम करता है। – Apalala