it-swarm.dev

cara menggunakan dari __future__ impor print_function

Saya baru dalam pemrograman dengan python, dan saya mencoba untuk mencetak dengan pemisah dan akhir tetapi masih memberi saya kesalahan sintaks saya menggunakan python 2.7 Saya sedang coding dari vim editor dan di sini adalah kode saya:

import sys, os, time
from __future__ import print_function

for x in range(0,10):
    print x, sep=' ', end=''
    time.sleep(1)

tolong bantu. Dan menggunakan kode saya, tunjukkan di mana saya seharusnya menggunakan from __future__ import print_function Terima kasih

103
UHMIS

Pertama-tama, from __future__ import print_function perlu menjadi baris kode pertama dalam skrip Anda (selain dari beberapa pengecualian yang disebutkan di bawah). Kedua, seperti jawaban lain katakan, Anda harus menggunakan print sebagai fungsi sekarang. Itulah inti dari from __future__ import print_function; untuk membawa fungsi print 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)

Pernyataan __future__ 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 terjadi bahwa fitur baru memperkenalkan sintaksis yang tidak kompatibel baru (seperti Word 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 pernyataan __future__ adalah modul docstring, komentar, baris kosong, dan pernyataan masa depan lainnya.

167
Cyphase