sys.stdout
निम्न सिंटैक्स त्रुटि उत्पन्न करने के बजाय सीधे फ़ाइल में प्रिंट करने का प्रयास क्यों किया जाता है :
Python 2.7.2+ (default, Oct 4 2011, 20:06:09)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f1=open('./testfile', 'w+')
>>> print('This is a test', file=f1)
File "<stdin>", line 1
print('This is a test', file=f1)
^
SyntaxError: invalid syntax
मदद से (__ buildins__) मेरे पास निम्नलिखित जानकारी है:
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
तो मानक स्ट्रीम प्रिंट को लिखने के लिए बदलने के लिए सही सिंटैक्स क्या होगा?
मुझे पता है कि फाइल करने के लिए लिखने के अलग-अलग तरीके हो सकते हैं लेकिन मुझे वास्तव में ऐसा नहीं लगता कि यह सिंटैक्स त्रुटि क्यों होनी चाहिए ...
एक अच्छी व्याख्या की सराहना की जाएगी!
from __future__ import print_function
? पायथन <3 में, प्रिंट एक बयान है:
help(__builtins__)
दर्शाता है कि एक बग है।
__builtins__.__dict__['print'](value, file=f1)
, काम करता है)।
print()
अजगर 3.x अंतर्निहित फ़ंक्शन है, जबकिprint
अजगर <3.x ऑपरेटर है। पोस्ट दिखाता है2.7.2+
।