2010-12-04 6 views
21

के भीतर पाइथन लिपि में कमांड लाइन तर्क पास करना मैं पाइथन & ग्रहण के लिए नया हूं, और ग्रहण (पायदेव) के भीतर चल रही स्क्रिप्ट के लिए कमांड लाइन तर्क को पारित करने में कुछ कठिनाइयों को समझना।ग्रहण (पीईडीईवी)

The following link बताता है कि पायथन स्क्रिप्ट के लिए कमांड लाइन तर्क कैसे पास करें।

, कमांड लाइन तर्क मॉड्यूल argecho.py (ऊपर के लिंक से कोड) पास करने के लिए

#argecho.py 
import sys 

for arg in sys.argv: 1 
    print arg 

मैं अजगर कंसोल में टाइप करने के लिए की आवश्यकता होगी

[[email protected] py]$ python argecho.py    
argecho.py 

या

[[email protected] py]$ python argecho.py abc def  
argecho.py 
abc 
def 

कैसे क्या मैं ग्रहण (पायदेव) के भीतर पाइथन लिपि में एक ही तर्क पारित करूंगा ???

धन्यवाद!

उत्तर

10

आप अपने कार्यक्रम तर्क के लिए सहभागी पूछना चाहते हैं, तो वे इस तरह के रूप कमांडलाइन तर्क, नहीं रह। हालांकि आप इसे ऐसा कुछ कर सकते हैं (केवल डीबगिंग के लिए!), जो आपको इंटरैक्टिव रूप से उन मानों को दर्ज करने की अनुमति देगा जो प्रोग्राम कमांड लाइन तर्क के रूप में देखेंगे।

import sys 
sys.argv = raw_input('Enter command line arguments: ').split() 

#Rest of the program here 

नोट काम करने के एंड्रयू रास्ता ज्यादा बेहतर है कि। इसके अलावा, यदि आप अजगर 3. * का उपयोग कर रहे हैं, तो raw_input,

+0

शब्द इंटरैक्टिव द्वारा मेरा क्या मतलब है - ग्रहण के भीतर खोलने वाला कंसोल/खोल, और मेरी स्क्रिप्ट निष्पादित करने के लिए कमांड टाइप करना। उदाहरण के लिए, CTRL + ALT + ENTER आपको चुनने देता है कि कौन सा कंसोल खोलना है। – newprint

52

टूल बार में प्ले बटन नीचे तीर पर क्लिक करें -> कॉन्फ़िगरेशन चलाएं -> (डबल क्लिक) पायथन रन -> दाएं हाथ पर तर्क टैब।

वहां से आप कार्यक्रम तर्क पाठ बॉक्स भर सकते हैं:

enter image description here

+2

तर्कों को पारस्परिक रूप से पारित करने का कोई तरीका है ?? – newprint

+1

मूल रूप से नहीं। अगला सबसे अच्छा समाधान स्टडीन से पढ़ना है जो ब्लू मिर्च की सिफारिश कर रहा है। –

2

"गुण" - >> "रन/डीबग सेटिंग्स" का चयन करें, तो input होना चाहिए।

दाएं पैनल में संबंधित फ़ाइल का चयन करें और फिर "संपादित करें" बटन पर क्लिक करें। यह चयनित फाइल के गुण खोल देगा। एक "तर्क" टैब है।

0

मैं क्या करता हूं:

डीबग परिप्रेक्ष्य में प्रोजेक्ट खोलें। कंसोल में, जब भी डीबगर ब्रेकपॉइंट पर टूट जाता है, तो आप "कंसोल" में पायथन कमांड टाइप कर सकते हैं और वापसी (या दर्ज) हिट कर सकते हैं। कोई ">>" प्रतीक नहीं है, इसलिए खोजना मुश्किल है।

लेकिन मुझे आश्चर्य है कि क्यों ग्रहण :(

1

साल बाद ग्रहण, लेकिन श या IPython में run my.py M=11 N=None ... को अन्य उत्तर का एक संस्करण एक अजगर खोल नहीं है, और नहीं:

import sys 

# parameters -- 
M = 10 
N = 20 
... 

# to change these params in sh or ipython, run this.py M=11 N=None ... 
for arg in sys.argv[1:]: 
    exec(arg) 
... 
myfunc(M, N ...) 

One-line-arg-parse-for-flexible-testing-in-python gist.github.com/denis-bz के अंतर्गत देखें।