Pertama-tama, from __future__ import print_function
perlu baris kode pertama dalam skrip Anda (selain dari beberapa pengecualian yang disebutkan di bawah). Kedua, seperti jawaban lain katakan, Anda harus menggunakan print
fungsi sekarang. Itulah intinya from __future__ import print_function
; untuk membawa print
fungsi dari Python 3 ke Python 2.6+.
from __future__ import print_function
import sys, os, time
for x in range(0,10):
print(x, sep=' ', end='') # No need for sep here, but okay :)
time.sleep(1)
__future__
pernyataan harus berada di dekat bagian atas file karena mereka mengubah hal-hal mendasar tentang bahasa, sehingga kompiler perlu mengetahuinya sejak awal. Dari dokumentasi :
Pernyataan di masa depan diakui dan diperlakukan secara khusus pada waktu kompilasi: Perubahan pada semantik konstruksi inti sering diimplementasikan dengan menghasilkan kode yang berbeda. Bahkan mungkin bahwa fitur baru memperkenalkan sintaksis yang tidak kompatibel baru (seperti kata yang dipesan baru), di mana kompiler mungkin perlu menguraikan modul secara berbeda. Keputusan semacam itu tidak dapat didorong sampai runtime.
Dokumentasi juga menyebutkan bahwa satu-satunya hal yang dapat mendahului __future__
pernyataan adalah modul docstring, komentar, baris kosong, dan pernyataan masa depan lainnya.