繁体   English   中英

python-markdown无法识别代码块?

[英]python-markdown doesn't recognize code block?

我正在编写一个脚本来将Markdown为HTML,我尝试了markdownmarkdown2 当我使用MathJax使它能够在LaTex中显示数学公式时,我发现markdown对我来说比markdown2更好。 但是,它们都不能识别```代码块。 我的代码是用Python编写的。

我的Markdown代码是:

计算香农熵的函数:

```

from math import log

def calcShannonEnt(dataSet):
   numEntries = len(dataSet) #类别个数
   labelCount = {}
   for featVec in dataSet: #对每一条数据
       currentLabel = featVec[-1] #currentLabel为当前数据的类别
       if currentLabel not in labelCount.keys(): #计数
           labelCount[currentLabel] = 0
       labelCount[currentLabel] += 1
   shannonEnt = 0.0
   for key in labelCount.keys():
       prob = float(labelCount[key]) / float(numEntries)
       shannonEnt -= prob * float(log(prob,2))#计算香农熵
   return shannonEnt

```


使用要求:

- 调用的数据必须储存在列表中,且所有列表元素有相同长度
- 列表元素的最后一列为类别

[sorted函数及operator.itemgetter函数的用法详解](http://blog.csdn.net/alvine008/article/details/37757753

我希望那些汉字不要打扰你。 HTML代码是:

<p>计算香农熵的函数:</p>
<pre><code>```

from math import log

def calcShannonEnt(dataSet):
   numEntries = len(dataSet) #类别个数
   labelCount = {}
   for featVec in dataSet: #对每一条数据
       currentLabel = featVec[-1] #currentLabel为当前数据的类别
       if currentLabel not in labelCount.keys(): #计数
           labelCount[currentLabel] = 0
       labelCount[currentLabel] += 1
   shannonEnt = 0.0
   for key in labelCount.keys():
       prob = float(labelCount[key]) / float(numEntries)
       shannonEnt -= prob * float(log(prob,2))#计算香农熵
   return shannonEnt

```


使用要求:

- 调用的数据必须储存在列表中,且所有列表元素有相同长度
- 列表元素的最后一列为类别

[sorted函数及operator.itemgetter函数的用法详解](http://blog.csdn.net/alvine008/article/details/37757753
</code></pre>

有什么问题?

在@Waylan的帮助下,问题得到了很好的解决。 这是因为我没有启用扩展。 查看扩展名

现在是对的:

html_txt = markdown.markdown(post.body_markdown, extensions=['fenced_code'])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM