Pertama-tama, from __future__ import print_functionperlu baris kode pertama dalam skrip Anda (selain dari beberapa pengecualian yang disebutkan di bawah). Kedua, seperti jawaban lain katakan, Anda harus menggunakan printfungsi 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.