SORU
16 ŞUBAT 2012, PERŞEMBE


Python 2.7: Dosyaya Yazdır

Neden doğrudan sys.stdout yerine bir dosyaya yazdırmaya aşağıdaki sözdizimi hatası üretir:

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

Yardım (____yerleşiklere) aşağıdaki bilgi var:

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.

Baskı yazar standart akış değiştirmek için doğru sözdizimi ne olurdu?

Yazmak belki daha iyi yollar farklı dosya olduğunu biliyorum ama gerçekten bu bir sözdizimi hatası olmalı anlamıyorum...

Güzel bir açıklama mutluluk duyacağız!

CEVAP
16 ŞUBAT 2012, PERŞEMBE


Eğer Python print Bu fonksiyonu kullanmak istiyorsanız, 2, __future__ almanız gerekir:

from __future__ import print_function

Ama bu fonksiyonu kullanmadan aynı sonucu da olabilir:

print >>f1, 'This is a test'

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FRED

    FRED

    1 EKİM 2005
  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009
  • Lupe Fiasco

    Lupe Fiasco

    23 ŞUBAT 2006