Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用重复变量的基于字典的字符串格式_Python_Python 2.7_String Formatting - Fatal编程技术网

Python 使用重复变量的基于字典的字符串格式

Python 使用重复变量的基于字典的字符串格式,python,python-2.7,string-formatting,Python,Python 2.7,String Formatting,我想使用变量格式化字符串。包含%和.format()选项 但是,由于我要格式化的字符串是一段LaTeX代码,我选择使用过时的%-版本,因为我的代码中已经有{和}字符。(我不想逃避它们,因为代码会经常更新) 我的问题是:当我运行代码时,出现以下错误: TypeError:格式字符串的参数不足 我使用字典来定义变量,它们都被定义了。据我所知,它可能来自%中用于注释的%字符,这在python中可能会被错误解释 我如何处理这个问题?真正的问题/解决方案是:我的.tex代码包含以下注释的tex命令:%\b

我想使用变量格式化字符串。包含
%
.format()
选项

但是,由于我要格式化的字符串是一段
LaTeX
代码,我选择使用过时的
%
-版本,因为我的代码中已经有
{
}
字符。(我不想逃避它们,因为代码会经常更新)

我的问题是:当我运行代码时,出现以下错误:

TypeError:格式字符串的参数不足

我使用字典来定义变量,它们都被定义了。据我所知,它可能来自
%
中用于注释的
%
字符,这在python中可能会被错误解释


我如何处理这个问题?

真正的问题/解决方案是:我的
.tex
代码包含以下注释的
tex
命令:
%\begin{itemize}
然后
%\end{itemize}

Python将
%\
-模式理解为对键的调用。。。这不是故意的


注:为了使您的
LaTeX
code
python
可读,您需要转义
%
,即用以下模式注释您的
.tex
代码:
%
(%Space)真正的问题/解决方案是:我的
.tex
代码包含以下注释的
tex
命令:
%\begin{itemize}
然后
%\end{itemize}

Python将
%\
-模式理解为对键的调用。。。这不是故意的


注:为了使您的
LaTeX
code
python
可读,您需要对
%
进行转义,即使用以下模式注释您的
.tex
代码:
%(%Space)

请隔离问题,以便向我们展示一些代码。目前,我想知道您是否没有使用
%(key)s
从您的dict中获取值?@Ulrich我会清理我的代码并发布它。为了回答你的问题,我在我的
.tex
代码中使用了
%(key)s
,并定义了一个
dict={'key1'='foo','key2'='bar}
。(:也许你忘了某个地方一直发生在我身上的
s
,因为
%
会给出一个
KeyError
如果它无法从dict中找到一个键,那么你给出的
TypeError
应该只有在你使用非dict版本并且替换的
%
比dict多的情况下才会出现。@Ulrich找到了!请看我的自动回答。)。抱歉打扰您,回答是thx(-:请隔离问题,以便向我们展示一些代码。目前,我想知道您是否没有使用
%(key)s
从您的dict中获取值?@Ulrich我将清理我的代码并发布它。要回答您的问题,我使用
%(key)s
在my
.tex中
编码并定义了一个
dict={'key1'='foo','key2'='bar}
。(:也许你忘了某个地方一直发生在我身上的
s
,因为
%
会给出一个
KeyError
如果它无法从dict中找到一个键,那么你给出的
TypeError
应该只有在你使用非dict版本并且替换的
%
比dict多的情况下才会出现。@Ulrich找到了!请看我的自动回答。)。抱歉打扰您,回答(-)请点击thx: