Jupyter not defterlerinde programlı olarak nasıl fiyat düşüşü oluşturulur?


97

Jupyter not defterinde dersler için bir rapor yazmak istiyorum. Bazı şeyleri saymak, bazı sonuçlar oluşturmak ve bunları markdown'a dahil etmek istiyorum. Hücrenin çıktısını indirim olarak yorumlanacak şekilde ayarlayabilir miyim?
Böyle bir komut istiyorum: print '$\phi$'tıpkı markdown'daki gibi phi sembolü oluşturmak için.
Diğer bir deyişle, markdown'da yapılmış bir şablona sahip olmak ve not defterine yazılan program tarafından üretilen değerleri eklemek istiyorum. Defterin yeniden hesaplanması, eklenen bu yeni değerlerle yeni sonuçlar ve yeni fiyat indirimi oluşturmalıdır. Bu yazılımla mümkün mü yoksa değerleri kendim değiştirmem mi gerekiyor?

Yanıtlar:


141

İstediğiniz işlevler IPython.display modülündedir .

from IPython.display import display, Markdown, Latex
display(Markdown('*some markdown* $\phi$'))
# If you particularly want to display maths, this is more direct:
display(Latex('\phi'))

1
Çok teşekkürler, sanırım bu bana önemli ölçüde yardımcı olacaktır. Sorabilirsem, hücreyi kodla gizlemenin bir yolu var mı? Demek istediğim, markdown hücresini "derlediğimde", "kod" kaybolur ve yalnızca derlenmiş markdown çıktısı görülebilir. Bunu tekrar edebilmek isterdim, ancak display_markdownişlevle.
fulaphex

2
Maalesef kodunuz benim için çalışmıyor, herhangi bir çıktı üretmiyor.
fulaphex

1
Şimdi gerçekten işe yarıyor, teşekkürler. Bir hücreyi gizlemek için bir komut var mı, böylece bu indirimi oluşturabilirim ve bu normal bir indirim hücresi gibi davranır mı?
fulaphex

2
Önceki yorumdaki
BioGeek

2
Baskı değil nesneyi <IPython.core.display.Markdown object>
alıyorum

31

Temelde iki farklı şey istiyorsunuz:

  1. Kod sonuçlarını veren markdown hücreleri.

    Bazı şeyleri saymak, bazı sonuçlar oluşturmak ve bunları markdown'a dahil etmek istiyorum. [...] Markdown için bir şablona sahip olmak ve program tarafından oluşturulan değerleri not defterine eklemek istiyorum

  2. İndirimli çıkış yapan kod hücreleri

    Böyle bir komut istiyorum: print '$\phi$'tıpkı markdown'daki gibi phi sembolü oluşturmak için.

2. zaten başka bir cevapla kaplandığından (temelde: kullan Latex()veya Markdown()buradan aktarıldı IPython.display), ilkine odaklanacağım:


1. Eklenen değişkenlerle Markdown Şablonu

Jupyter uzantısı Python Markdown ile aslında tam olarak tarif ettiğiniz şeyi yapmak mümkündür.

Kurulum talimatları nbextensions'ın github sayfasında bulunabilir. Bir jupyter komutu veya uzantı yapılandırıcı kullanarak python işaretleme uzantısını etkinleştirdiğinizden emin olun .

Uzantı ile değişkenlere üzerinden erişilir {{var-name}}. Böyle bir indirim şablonu için bir örnek şöyle görünebilir:

Markdown Hücrelerinde Python Kodu

A değişkeni {{a}}

Ayrıca LateX'i buraya da yerleştirebilirsiniz: {{b}}!

Görüntüler bile gömülebilir: {{i}}

Doğal olarak tüm değişkenler veya görüntüler a, b, iönceki kodda ayarlanmalıdır. Ve tabii ki, Markdown-Latex tarzı ifadeleri (gibi $\phi$) print komutu olmadan da kullanabilirsiniz. Bu görüntü, uzantının wiki'sindendir ve yeteneği gösterir.

wiki'den örnek


İpython / jupyter'e entegre edilen bu işlevsellik hakkında daha fazla bilgi, ipython ve jupyter için sorun izleyicilerinde tartışılmaktadır .


Bu Jupyter Lab'da mevcut mu?
BND

Bunu kullanmıyorum, dolayısıyla tecrübem yok. Ancak jupyter-lab uzantı listesinde "Python Markdown" bulamıyorum: github.com/topics/jupyterlab-extension?q=&unscoped_q= - bu nedenle: belki hayır?
Honeybear
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.