我已经搜索过答案,但相关的解决方案似乎只涉及在解释器中使用'print'。
我想知道是否有可能从IDLE中以彩色打印(纸质)Python代码?
我已经进入了IDLE的“文件 > 打印窗口”,但它似乎只会打印出黑白版本,并没有提示是否要进行彩色打印等。
编辑:
看起来这可能不可行,所以选择将代码复制到像SciTE这样的文本编辑器中,并从那里打印 - 就像默认的IDLE语法高亮一样。
我已经搜索过答案,但相关的解决方案似乎只涉及在解释器中使用'print'。
我想知道是否有可能从IDLE中以彩色打印(纸质)Python代码?
我已经进入了IDLE的“文件 > 打印窗口”,但它似乎只会打印出黑白版本,并没有提示是否要进行彩色打印等。
编辑:
看起来这可能不可行,所以选择将代码复制到像SciTE这样的文本编辑器中,并从那里打印 - 就像默认的IDLE语法高亮一样。
listings
软件包支持python的类似IDLE的颜色着色,但它相当隐藏:您必须知道包含在listings
手册中提到的“首选项文件”,但没有描述其功能。以下几乎是最简示例,将使您的脚本myscript.py
成为IDLE颜色的彩色PDF。\documentclass{article}
\usepackage{listings}
\input{listings-python.prf} % defines the python-idle-code style
\usepackage{textcomp} % Needed for straight quotes
\lstset{
basicstyle=\normalsize\ttfamily, % size of the fonts for the code
language={Python},style={python-idle-code},
showstringspaces=false,
tabsize=4,
upquote=true, % Requires textcomp
}
\oddsidemargin=-0.5cm
\textwidth=7in % This just fits 80 characters at 10pt
\begin{document}
\lstinputlisting{myscript.py}
\end{document}
您也可以在真正的LaTeX文档中包含代码片段。
可用性: 您至少需要listings
版本1.5b(2013/08/26)。使用Texlive 2013的用户必须从CTAN下载它(例如使用命令行texlive managertlmgr
)。它是TexLive 2016的一部分。
不幸的是,CTAN版本似乎仍然存在问题:偏好设置文件listings-python.prf
位于软件包的文档文件夹中,而不是TeX可以找到它的tex/latex/listings
位置。您需要手动移动它以使其包含起来。
pip
模块可以为您安装文件。import tkinter as Tkinter
而不是 import Tkinter
,并使用 import tkinter.filedialog as tkFileDialog
而不是 import tkFileDialog
。代码中使用了内置模块 "sys" 中的 sys.version
在 if/else 块中运行正确的代码。我经常使用这种方法处理大量的代码。 只需安装SciTE "https://www.scintilla.org/SciTEDownload.html" 复制并粘贴您的代码,然后打印出来。 我喜欢拿一些胶带和标记笔把所有的纸张贴在墙上,然后放些音乐。 愉快编码!
listings-python.prf
位于正确的位置(/texmf-dist/tex/latex/listings/listings-python.prf
),LaTeX可以在不复制它的情况下找到它。 - Nicolás Ozimicalistings
包已经随着 texlive 发行版一起默认安装了。 - alexislistings
中的颜色方案几乎完全匹配IDLE的颜色方案。 - alexis