我在Windows上的Jupyter Notebook中使用IRuby内核。
使用IRuby表显示功能时,我有意外的行为。
以下代码应该显示创建的数组的表:
arr = "123456789".chars().each_slice(3).to_a()
IRuby.display IRuby.table(arr)
它按预期在输入框下方显示该表。问题在于它还在输出框中显示了生成的HTML。
["display_data", "<IDS|MSG>", "19980fc78ddf9fb5a1bc54ee7697822b5012afe6056940c6f481f9c2dfe81b2c", "{\"msg_type\":\"display_data\",\"msg_id\":\"a3572ae1-7019-4dba-85ce-f300767af580\",\"username\":\"kernel\",\"session\":\"1aea1761-976a-46a6-964c-85cada3adcc5\",\"version\":\"5.0\"}", "{\"msg_id\":\"09be08ecee814a2cab83f072d39b0cf5\",\"username\":\"username\",\"session\":\"741cfea13df54fd48739951832ccc2bf\",\"msg_type\":\"execute_request\",\"version\":\"5.2\",\"date\":\"2020-02-12T08:02:31.771365Z\"}", "{}", "{\"data\":{\"text/plain\":\"\\\"<table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table>\\\"\",\"text/html\":\"<table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table>\"},\"metadata\":{}}"]
当我在本地运行示例代码时,也会发生这种情况。
红宝石部分是通过https://rubyinstaller.org/安装的,而Jupyter是通过Anaconda安装的。
通过添加nil
到单元格的末尾作为单元格的返回值,可以抑制HTML输出:
arr = "123456789".chars.each_slice(3).to_a
IRuby.display IRuby.table(arr)
nil
不完美,但这是东西。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句