pycharm 如何展示< IPython.core.display.HTML object>?

lxkprmvk  于 2023-10-20  发布在  PyCharm
关注(0)|答案(7)|浏览(493)

我试着运行下面的代码,但我有一个问题,在显示结果。我用的是PyCharm IDE。

from fastai.text import *

data = pd.read_csv("data_elonmusk.csv",  encoding='latin1')
data.head()

data = (TextList.from_df(data, cols='Tweet')
                .split_by_rand_pct(0.1)
                .label_for_lm()
                .databunch(bs=48))

data.show_batch()

运行“data.show_batch()”行时的输出是:

IPython.core.display.HTML object
5us2dqdw

5us2dqdw1#

如果你不想在一个笔记本电脑中工作,你可以保存data作为一个HTML文件,并在浏览器中打开它。

with open("data.html", "w") as file:
    file.write(data)
34gzjxbg

34gzjxbg2#

您只能在浏览器中呈现HTML,而不能在Python控制台/编辑器环境中呈现。
因此,它适用于Jupiter笔记本电脑,Jupiter实验室等。
最多调用.data来查看HTML,但同样它不会呈现

bvn4nwqk

bvn4nwqk3#

我通过运行木星笔记本上的代码解决了问题。

ohtdti5x

ohtdti5x4#

您可以在data.show_batch()之后添加以下代码:
plt.show()

5cg8jx4n

5cg8jx4n5#

只需要使用HTML对象的数据组件。

with open("data.html", "w") as file:
    file.write(data.data)
lvjbypge

lvjbypge6#

除了将其写入文件之外,另一种选择是使用Python中的HTML解析器来语法化地编辑HTML。Python中最常用的工具是beautifulsoup。您可以通过
pip install beautifulsoup4
那么在你的程序中你可以

from bs4 import BeautifulSoup

html_string = data.show_batch().data
soup = BeautifulSoup(html_string)
# do some manipulation to the parsed HTML object
# then do whatever else you want with the object
cczfrluj

cczfrluj7#

所以我猜你真正的问题是
为什么Pycharm IDE不能正确渲染html
经过几次测试,PyCharm渲染似乎不支持某些html标签。以下工作正常:

display(HTML('<section><h1>Hello</h1><p>Text</p></section>'))

但是下面的代码将输出<IPython.core.display.HTML object>

display(HTML('<table><tr><td>Hello</td></tr></table>'))

所以你得到这个结果的原因是因为呈现的HTML包含一些PyCharm不支持的标签。使用真实的笔记本是正确的做法,但我建议您打开Jetbrains的bug:https://www.jetbrains.com/help/pycharm/reporting-issues.html

相关问题