我想生成以下行
1 & {\QPCSymbols\XeTeXglyph 2} & \textarabic{الحمدلله} & \texttt{!} & \verb$\XeTeXglyph 2$ \\
\hline
假设第一个数字是n
,第二个数字是n+1
,\textarabic
的内容来自f_nusoos
,内容\texttt
来自f_keys
。两个文件的行数相同。
我已经创建了一个Python3脚本,可以让我得到我想要的东西,但我最终得到了新的线符号(\n
)。
这是我到目前为止所拥有的,
#! python3
import linecache
f_nusoos = 'symbol_nass_list.txt'
f_keys = 'symbol_key_list.txt'
contentfile = open('content.tex', 'w+', encoding="utf-8")
theLine = " "
for x in range(3):
contentfile.write('{} & {{\QPCSymbols\XeTeXglyph {}}} & \\textarabic{{{}}} & \\texttt{{{}}} & \\verb$\XeTeXglyph {}$ \\\\'.format(x+1, x+2,linecache.getline(f_nusoos, x+1).rstrip('\n'), linecache.getline(f_keys, x+1), x+2).rstrip('\n'))
contentfile.write('\hline')
执行后content.tex
的内容是,
1 & {\QPCSymbols\XeTeXglyph 2} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{!
} & \verb$\XeTeXglyph 2$ \\\hline2 & {\QPCSymbols\XeTeXglyph 3} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{"
} & \verb$\XeTeXglyph 3$ \\\hline3 & {\QPCSymbols\XeTeXglyph 4} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{#
} & \verb$\XeTeXglyph 4$ \\\hline
然而,我的期望
1 & {\QPCSymbols\XeTeXglyph 2} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{!} & \verb$\XeTeXglyph 2$\\
\hline
2 & {\QPCSymbols\XeTeXglyph 3} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{"} & \verb$\XeTeXglyph 3$\\
\hline
3 & {\QPCSymbols\XeTeXglyph 4} & \textarabic{بسم الله الرحمن الرحيم} & \texttt{#} & \verb$\XeTeXglyph 4$\\
\hline
问题似乎是在texttt{CONTENT
之后插入新行。我不知道为什么会这样。
f_nusoos.txt
的内容:
بسم الله الرحمن الرحيم
بسم الله الرحمن الرحيم
بسم الله الرحمن الرحيم
f_keys.txt
的内容:
!
"
#
答案 0 :(得分:0)
我长时间盯着这个。
而不是
contentfile.write('{} & {{\QPCSymbols\XeTeXglyph {}}} & \\textarabic{{{}}} & \\texttt{{{}}} & \\verb$\XeTeXglyph {}$ \\\\'.format(x+1, x+2,linecache.getline(f_nusoos, x+1).rstrip('\n'), linecache.getline(f_keys, x+1), x+2).rstrip('\n'))
应该是
contentfile.write('{} & {{\QPCSymbols\XeTeXglyph {}}} & \\textarabic{{{}}} & \\texttt{{{}}} & \\verb$\XeTeXglyph {}$ \\\\'.format(x+1, x+2,linecache.getline(f_nusoos, x+1).rstrip('\n'), linecache.getline(f_keys, x+1).rstrip('\n'), x+2))
rstrip()
应该是来自文件的输入而不是来自计数器。