2012-07-27 21 views
5

मुझे sep, file, (आदि) का उपयोग करके एक अजीब त्रुटि है जिसमें पायथन के print() फ़ंक्शन के तर्क हैं। मैंने इसे Google पर बाहर करने की कोशिश की, स्टैक ओवरफ्लो के चारों ओर डैग किया, और python's documentation पढ़ा लेकिन मैं कुछ भी नहीं आया। मैंने एक साधारण स्निपेट संलग्न किया है, मैं किसी भी मदद की गहराई से सराहना करता हूं।पायथन 2.7 प्रिंट() त्रुटि

# python 
Python 2.7.2 (default, Aug 19 2011, 20:41:43) [GCC] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> print("blah"*10, sep=" | ") 
    File "<stdin>", line 1 
    print("blah"*10, sep=" | ") 
         ^
SyntaxError: invalid syntax 

उत्तर

11

प्रयास करें:

from __future__ import print_function 

पहले

+0

धन्यवाद। इस मुद्दे को हल किया। तो अजगर दस्तावेज कैसे आते हैं (मेरी अद्यतन पोस्ट देखें) अन्यथा निर्दिष्ट करता है? और, क्या आप जानते हैं कि मैं 'प्रिंट()' फ़ंक्शन के मूल उपयोग के लिए प्रासंगिक दस्तावेज़ कहां पा सकता हूं? – MrRoth

+2

@MrRoth: अपने लिंक पर नोट पढ़ें;) – phant0m

+1

@MrRoth आपको इसे उत्तर के रूप में स्वीकार करना चाहिए। – Ash

6

2.x श्रृंखला में, print जबकि 3.x में यह एक समारोह है, एक बयान है। यदि आप 2.6+ में print फ़ंक्शन के रूप में चाहते हैं, तो आप पहले आयात कथन के रूप में from __future__ import print_function का उपयोग करें।

अपेक्षा कोड को तोड़ने के लिए हालांकि

0

प्रिंट समारोह अजगर 3. के लिए विशिष्ट आप यहाँ दो समाधान है:

लिखें

from __future__ import print_function 

ताकि आप इसे निर्दिष्ट के रूप में उपयोग कर सकते हैं cdarke द्वारा।

या आप प्रिंट को सरल कथन के रूप में उपयोग करते हैं क्योंकि यह पाइथन (print "Hello World") के पुराने संस्करणों के साथ होना चाहिए।

+0

पुराने 'प्रिंट' कथन का उपयोग करने में समस्या यह है कि मौजूदा 'प्रिंट()' फ़ंक्शन के विपरीत विभाजक को बदला नहीं जा सकता है। – cdarke

संबंधित मुद्दे