NoteRun

SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

Python hatası · Python 3

Defter Python 2 için yazılmış; orada print bir deyimdi: print "total:", total. Python 3’te bir fonksiyon ve parantez istiyor. Python hücrenin tamamını çalıştırmadan önce okuduğu için print’in üstündeki satırlar bile çalışmaz.

Neden olur

Python 2’nin desteği Ocak 2020’de bitti, ama birçok kurs defteri, kitap ve Kaggle çalışması onun için yazıldı. Parantezsiz tek bir print bütün hücreyi durdurmaya yeter.

Nasıl düzeltilir

Parantez ekle. Python 2’de aynı satırda kalmayı sağlayan sondaki virgül end=' ' olur, print >>f, x de print(x, file=f):

Önce

total = 42
print "total:", total
for name in ["a", "b"]:
    print name,

Sonra

total = 42
print("total:", total)
for name in ["a", "b"]:
    print(name, end=' ')

Diğer Python 2 satırları da aynı şekilde düzelir: except ValueError, e: → except ValueError as e:, xrange → range, raw_input → input.

NoteRun’da

NoteRun defteri sen çalıştırmadan önce denetler ve duracak hücreleri işaretler. Hepsini düzelt, defterdeki bütün Python 2 print, except, xrange ve raw_input satırlarını tek dokunuşla değiştirir. Sen dokunana kadar hiçbir şey değişmez, her değişikliği önce görürsün, Geri al defteri eski hâline getirir.

iPhone ya da iPad’inde bu hatayı içeren örnek defteri indir ve NoteRun’da aç.

App Store’dan İndirin

Diğer hatalar