का उपयोग कर कमांड लाइन में तारों के रूप में पारित पायथन आदेश निष्पादित करें क्या Python -c का उपयोग कर स्ट्रिंग के रूप में पारित पायथन आदेश निष्पादित करना संभव है? क्या कोई उदाहरण दे सकता है।पाइथन-सी
पाइथन-सी
उत्तर
के लिए एक एकल स्ट्रिंग आप python -c
का उपयोग कर सकते हैं। लेकिन स्ट्रिंग्स के लिए के रूप में सवाल पूछता है, आप से गुजरना होगा उन्हें stdin के लिए:
$ python << EOF
> import sys
> print sys.version
> EOF
2.7.3 (default, Apr 13 2012, 20:16:59)
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)]
मुझे जवाब मिला। बस इसे टर्मिनल पर पेस्ट करें। पायथन-सी "आयात sys; x = 'हैलो वर्ल्ड'; प्रिंट एक्स;" – kasa
यह * एक * स्ट्रिंग है। यदि आप * तार * चाहते हैं तो आपको उन्हें stdin पर फ़ीड करने की आवश्यकता है। –
अजगर eval
है। इस स्क्रिप्ट का प्रयास करें।
import sys
str = sys.argv[1]
eval(str)
इस तरह यह आह्वान:
$ python3 eval.py 'print(1 + 1)'
2
आप -c
उपयोग कर सकते हैं एक स्ट्रिंग निष्पादित करने के लिए अजगर पाने के लिए। उदाहरण के लिए:
python3 -c "print(5)"
हालांकि, वहाँ से बच वर्ण (उदा \n
) का उपयोग करने के लिए एक रास्ता होना करने के लिए प्रतीत नहीं होता। इसलिए, यदि आपको उनकी आवश्यकता है, तो इसके बजाय echo -e
या printf
से पाइप का उपयोग करें। उदाहरण के लिए:
$ printf "import sys\nprint(sys.path)" | python3
'पायथन 3-सी" आयात sys; प्रिंट (sys.path) "' सरल है। – mattmc3
@ mattmc3 आप अर्धविराम के साथ एक ब्लॉक (जहां इंडेंटेशन कम हो जाएगा) समाप्त नहीं कर सकते हैं। तो यह अधिक सीमित है; उदाहरण के लिए, आप एक फ़ंक्शन नहीं बना सकते हैं और फिर वास्तव में इसे कॉल कर सकते हैं, या यदि कोई और, या बिना शर्त कोड के बाद भी उपयोग कर सकते हैं। लेकिन (जहां संभव हो) यह आसान है। – Kevin
आप हमारे साथ साझा कर सकते हैं कि तुम क्या अब तक की कोशिश की? – Levon
असल में, मैं पाइथन-सी "" प्रारूप का उपयोग करने के तरीके की तलाश में था। – kasa