Python 2.5.4 kullanıyorum ve ondalık modülü kullanmaya çalışıyorum. Onu tercümanda kullandığımda, bir sorunum yok. Aşağıdaki kodu koyduğunuzda,Python'da, ondalık modemi yorumlayıcıdan ziyade bir komut dosyasında nasıl kullanırsınız?
>>> from decimal import *
>>> Decimal('1.2')+ Decimal('2.3')
Decimal("3.5")
Ama: ayrı bir dosya (denilen decimal.py) içinde
from decimal import *
print Decimal('1.2')+Decimal('2.3')
ve bir modül olarak çalıştırın, tercüman şikayet Örneğin, bu çalışır:
Ben de ayrı bir dosyada bu kodu koyarak çalıştıNameError: name 'Decimal' is not defined
:
import decimal
print decimal.Decimal('1.2')+decimal.Decimal('2.3')
Ben modül olarak çalıştırdığınızda
, tercüman diyor: Neler oluyor
AttributeError: 'module' object has no attribute 'Decimal'
?
Komut dosyasının etkileşimli yorumlayıcınızla aynı Python sürümüyle çalıştırıldığından emin misiniz? Kontrol etmek isterseniz, 'print sys.version' yazmayı deneyin. ithalat sys baskı sys.version ve Evet, tercüman o olduğunu yazıyor: –
Belki yerine Python'un yerleşik bir –
Senaryomun çalışan çalıştı ithal ediliyor decimal.py' 'adlı bir dosya oluşturduk aynı sürüm. Bilgisayarımda sadece bir sürümün yüklü olduğunu düşünüyorum. – jack