2013-02-15 26 views
21

Bir Python sürüm 3.3.0 var ve neden b uzun süre b ve m için bana izin vermezsiniz emin değilim ... Cevapları aramaya çalıştım burada ve fakat hiçbir şey Python 3.x iseNameError: 'long' global adı tanımlı değil

NameError: global name 'long' is not defined 


power = long(b) % long(m) 
+4

Artık 'long' yok. Bırak gitsin (BTW, int yeni uzun) – JBernardo

+1

Neden ilk etapta 'long''a dönüştürmeye çalışıyorsunuz? Sadece işlevi tamsayılarla çağırıyorsunuz ve 'b' bir' int' ise '% m'' ın 'int''e sığmayacak kadar büyük bir yolu yoktur. Artı, hatta 2.x bile, çok büyük olsa bile, bir 'int' için çok büyük olan iki' int' değerindeki herhangi bir işlem zaten bir 'uzun' döndürür, bu yüzden önceden dönüştürme herhangi bir yararı yoktur. – abarnert

cevap

İlgili konular