2013-07-03 64 views
8

目前,當我在IPython的筆記本,我得到插入的對象之間的換行符使用display()功能:IPython的筆記本電腦:如何在不換行顯示()多個對象

>>> display('first line', 'second line') 
first line 
second line 

但我想print()行爲,任何事物都保持在同一行,例如:

>>> print("all on", "one line") 
all onone line 

是否有改變display行爲,要做到這一點的方法是什麼?

回答

5

不,display不能防止換行符,部分原因是因爲沒有新行來防止。每個顯示的對象都有自己的div坐下,並且這些對象是垂直排列的。您可能可以通過CSS來調整這一點,但我不會推薦。

真正能夠並排顯示兩個對象的唯一方法是構建自己的對象,它封裝多個顯示的對象,然後顯示它。

比如你簡單的字符串的情況:

class ListOfStrings(object): 
    def __init__(self, *strings): 
     self.strings = strings 

    def _repr_html_(self): 
     return ''.join([ 
      "<span class='listofstr'>%s</span>" % s 
      for s in self.strings 
      ]) 

display(ListOfStrings("hi", "hello", "hello there")) 

example notebook

相關問題