我在iPython中有一个Markdown单元格,其中包含四个美元符号。iPython会将任何位于美元符号之间的内容解释为MathJax表达式,这不是我想要的。我该如何转义美元符号?使用反斜杠进行转义可以防止MathJax自动解析,但是反斜杠会在编译后的Markdown中显示。
有什么办法只获取美元符号吗?
谢谢
在美元符号前面加上两个反斜杠。例如:
一些价格:\\$3.10、\\$4.25、\\$8.50。
(运行Jupyter笔记本服务器5.7.0)
使用反斜杠可以在数学模式下转义 $
。尝试使用 $\$$
\\$
转义时无效。但值得注意的是,在数学模式下产生的字符与$
字符不完全相同。 - Raisin如果你使用 <span>$</span>
,MathJax 将不会将其处理为定界符。在 Markdown 中应该能够输入它。例如,在这里我使用了它:$ 这不是数学 $。
squeue -u $USER
的内容,而美元符号使得下面所有Markdown代码的解释变得很难读。尽管在GitHub上推送时一切正常,但在我的笔记本上,$后面的内容看起来像一团糟,很难阅读。我尝试过的方法是squeue -u $USER
。我做错了什么吗? - Valentin_Ștefan虽然这是一篇旧文章,但它仍然在谷歌上排名第一!这里有一个澄清,我希望我能更早地理解:
Jupyter Notebook“Markdown”单元格允许您在其中编写HTML,并在大多数情况下按预期呈现HTML。这与其他某些Markdown编辑器不同,在这些编辑器中,您只能使用非常有限的HTML子集或根本不使用HTML。
$
字面量很重要很有用的一点是,当您想使用特殊字符的字面量版本时,例如$
。也就是说,您想要在单元格的渲染版本中显示一个$
,而不是使用$
来启动MathJax块。
这超出了$
到其他特殊字符的范围。也许你想在渲染单元格中显示一个*
,而不是指示项目符号或粗体/斜体文本。我很难想象使用#
或_
或[
的情况,但可能有某些原因您也想要编写这些文字(而不使用反引号将它们括起来,导致它们被样式化为内联代码块就像我这里所做的那样)。
其他几个答案描述了用HTML <span>
标签包围$
。如果您不像此GitHub评论所示在中间包含换行符,则表示告诉Jupyter Notebook不再将内容解释为Markdown,而是将其解释为HTML。在HTML中,$
不表示您正在启动MathJax块,因此它会按字面意思呈现。
个人认为,我不喜欢这种方法,因为很难确定span解决了什么问题,并且它是将span作为hack / workaround使用而不是HTML规范中既定用法的方式。
这就是上面$
答案建议的方法,尽管我认为它没有完全解释清楚。
这里的想法是,您不要在Markdown源中放置$
文字,而是放置HTML字符代码版本$
。如果您好奇,这里有一个更长的字符代码解释。但基本上您只需要知道,如果您在编辑Markdown单元格源时编写相关字符代码,则它将不会被解释为Markdown,但它将正确呈现。
因此,而不是使用此Markdown源:
The price range is $100 to $200
100 to
渲染成MathJax)$
替换$
即可:The price range is $100 to $200
(这将直接显示美元符号)
我更喜欢这种方法,因为HTML字符编码的整个目的是转义特殊字符,因此如果将来有人试图理解您的代码在做什么,他们应该能够相当快地弄清楚。
我也通常尽量避免在我的Jupyter Notebook Markdown中使用HTML开放和关闭标记,因为小错误(例如忘记一个/
)可能会产生混乱的连锁效应,但具体情况而定 :)
如果您正在寻找除$
以外的字符代码,我喜欢这个资源,虽然你也可以只需Google“HTML代码”加上您想要的字符,并且大多数情况下都可以得到正确的答案。
我知道这个话题很老,但它仍然是谷歌搜索的第一结果,并且其答案是不完整的。
您还可以用 `反引号` 包围 $,就像在 Jupyter 中显示代码一样。
所以 $ 变成 `$`,应该能够正常显示。