2015-07-13 12 views
5

से कॉल अजगर वर्ग तरीकों तो मैं की तरह एक अजगर स्क्रिप्ट में कुछ वर्ग लिखा? इसलिए आमतौर पर मैं दर्ज करता हूं: $ python test.py test_file अब मुझे यह जानने की जरूरत है कि "विधि" नामक क्लास फ़ंक्शन को कैसे एक्सेस किया जाए।कमांड लाइन

+0

हो के थोड़ा और स्पष्ट – The6thSense

+0

संभव डुप्लिकेट [पायथन: कमांड लाइन से चलाने के लिए समारोह] (http://stackoverflow.com/questions/3987041/python-run-function-from-the-command- लाइन) – Sam

उत्तर

2

आप वर्ग का एक उदाहरण विधि बनाते हैं, तो फोन:

test_instance = test(filepath) 
test_instance.method() 

ध्यान दें कि अजगर में आप नहीं कक्षाएं सिर्फ कोड को चलाने के लिए बनाने के लिए है।

import sys 
import csv 

def read_csv(filepath): 
    list = [] 
    with open(self.filepath, "r") as table: 
     reader = csv.reader(table, delimiter="\t") 
     for line in reader: 
      list.append[line] 

if __name__ == '__main__': 
    read_csv(sys.argv[1]) 

जहां मैं एक __main__ गार्ड को समारोह कॉल ले जाया गया है, ताकि आप भी स्क्रिप्ट एक मॉड्यूल के रूप का उपयोग करें और अन्यत्र उपयोग के लिए read_csv() समारोह आयात कर सकते हैं: तुम बस यहाँ एक सरल समारोह इस्तेमाल कर सकते हैं।

+0

मुझे पता है कि मैं इसे कक्षा के अंदर लिखने के बिना फ़ंक्शन का उपयोग कर सकता हूं लेकिन मैं बस इतना उत्सुक था कि यह कैसे करना संभव होगा :) – JadenBlaine

0

कमांड लाइन से ओपन पायथन दुभाषिया।

$ python 

अपने पायथन कोड मॉड्यूल को आयात करें, कक्षा का उदाहरण बनाएं और विधि को कॉल करें।

>>> import test 
>>> instance = test(test_file) 
>>> instance.method()