2012-06-15 14 views
17

komut satırından çalıştırmak yavaş piton işlemlerini belirtmek için sarı gölgeleme ile gerçekten güzel bir HTML "açıklama" dosyasını almakCython -a bayrağı (üretmek için sarı-gölgeli HTML) komut satırı olmadan

$ cython -a mycode.pyx 

vs hızlı C operasyonları. Ayrıca, Sage'de her Cython kodunu derlediğinizde aynı HTML dosyasını bir bağlantı olarak alırsınız. Sorularım şunlardır: (1) Bu HTML dosyasını dağınıklıkları kullanarak derliyorsam alabilir miyim? (2) Pyximport kullanarak derliyorsam bu HTML dosyasını alabilir miyim? Teşekkürler!!

+0

'subprocess' işlevini kullanarak' cython' komutunu her zaman arayabilirsiniz. Aksi takdirde, Cython kaynak kodunu okuyun; Takip etmek çok zor değil. –

cevap

20

larsmans yorumuna Teşekkür ve Cython email list, şimdi IPython çıkmadan "açıklama" HTML dosyası oluşturmak için birçok tatmin edici seçenekler vardır:

(1) kullanın altişlem ...

import subprocess 
subprocess.call(["cython","-a","myfilename.pyx"]) 

(2) derlemeden önce Cython kendim küresel Annotatesekmesindeki bayrak açma:

import Cython.Compiler.Options 
Cython.Compiler.Options.annotate = True 

(3)içine annotate=True iletin[distutils compilation method kullanırken].

Bu noktada, pyximport'un ek açıklama açmak için kendi doğrudan seçeneği yoktur.

+0

Tahmin edebileceğiniz gibi, Python 3 için 'cython3''tür. – handle

+0

' annotate', http://cython.readthedocs.io/en/latest/src/reference/compilation.html#compiler-directives ve '#cython: annotate = True' olarak eklenerek dosya oluşturulmuyor, bu yüzden 3. seçeneğinizi (başarıyla) kullanıyorum. – handle

+0

@handle - Seçenek (2) her zaman belgelenmemiş. Gerçekten denedin mi? –