You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LaTeX错误求助:figure环境内lstlisting报无换行可结束

问题解决方法

错误原因

你把lstlisting环境的配置参数[firstnumber=125]放在了环境内部的新行,LaTeX无法识别这是环境参数,会将其当作代码内容处理,进而引发语法解析错误,导致出现“There's no line here to end.”的提示。

修正后的代码

\begin{figure}
    \caption{Paragraph 1 - Code}
    \begin{lstlisting}[firstnumber=125]
def recextract(obj, arr, prefix):
    #Recursively search for values of key in JSON tree.
    if isinstance(obj, dict):
        for k, v in obj.items():
            if isinstance(v, (dict, list)):
                recextract(v, arr, prefix+'_'+k)
            else:
                arr[prefix+'_'+k] = v
    elif isinstance(obj, list):
        for item in obj:
            recextract(item, arr, prefix)

def parse_json(array_of_json):
    arr = dict()
    es_row = recextract(json.loads(array_of_json), arr, '')
    return arr
 
prdd = rdd.map(lambda x: parse_json(x[1]))
df = prdd.toDF(sampleRatio=0.01)
df = df.cache()
df = df.toDF(*(c.replace('.', '_') for c in df.columns))

print(df.count())
    \end{lstlisting}
    \source{Zeppelin}
    \label{fig:abb1}
\end{figure}

关键修正点

  • 将[firstnumber=125]直接附加在\begin{lstlisting}后面,作为环境的配置参数,而非放在环境内部单独成行。
  • 移除了代码内容前的额外缩进,避免代码显示时出现不必要的前缀空白(若需要保留代码缩进,可根据需求调整,但参数位置必须正确)。

额外注意:确保你已在文档导言区加载listings包(添加\usepackage{listings}),否则lstlisting环境无法正常使用;如果\source是自定义命令,也要保证其定义正确,避免引发其他错误。

内容的提问来源于stack exchange,提问作者Luke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 08:10:10