如何从空闲状态以彩色物理打印python代码?
我已经找到了这个问题的答案,但是相关的解决方案似乎涉及到解释器中的如何从空闲状态以彩色物理打印python代码?,python,python-2.7,printing,syntax-highlighting,python-idle,Python,Python 2.7,Printing,Syntax Highlighting,Python Idle,我已经找到了这个问题的答案,但是相关的解决方案似乎涉及到解释器中的'print'ing 我想知道是否有可能从空闲状态打印(物理上打印)彩色python代码 我在空闲状态下进入:文件>打印窗口,它似乎只是打印出黑白版本,而没有提示是否使用彩色打印等 编辑: 看起来这可能不可用,所以选项是将代码复制到像SciTE这样的文本编辑器中,然后从那里打印出来,这与默认的空闲语法高亮显示非常相似 IDLE无法做到这一点,但您可以通过一种间接的方式来做到:使用LaTeX将您的脚本格式化为空闲颜色 该软件包支持p
'print'
ing
我想知道是否有可能从空闲状态打印(物理上打印)彩色python代码
我在空闲状态下进入:文件>打印窗口
,它似乎只是打印出黑白版本,而没有提示是否使用彩色打印等
编辑:
看起来这可能不可用,所以选项是将代码复制到像SciTE这样的文本编辑器中,然后从那里打印出来,这与默认的空闲语法高亮显示非常相似 IDLE无法做到这一点,但您可以通过一种间接的方式来做到:使用LaTeX将您的脚本格式化为空闲颜色 该软件包支持python的IDLE-like着色,但它隐藏得很好:您必须知道包含一个“首选项文件”,该文件在
清单
手册中提到,但没有对其功能的描述。下面的示例将把脚本myscript.py
转换为空闲颜色的彩色PDF
\documentclass{article}
\usepackage{listings}
\输入{listings python.prf}%定义python空闲代码样式
\直接引号需要usepackage{textcomp}%
\lstset{
basicstyle=\normalsize\ttfamily,代码字体大小的百分比
语言={Python},风格={Python空闲代码},
showstringspaces=false,
tabsize=4,
upquote=true,%required textcomp
}
\oddsidemargin=-0.5cm
\textwidth=7in%这只适合在10pt处输入80个字符
\开始{document}
\lsInputListing{myscript.py}
\结束{document}
您还可以在真实的LaTeX文档中包含代码片段
可用性:您至少需要清单
1.5b版(2013/08/26)。Texlive 2013的用户必须从CTAN下载它(例如,使用命令行Texlive manager,tlmgr
)。这是TexLive 2016的一部分
不幸的是,CTAN版本似乎仍然存在问题:首选项文件listings python.prf
位于包的文档文件夹中,而不是位于tex可以找到它的tex/latex/listings
中。您需要手动移动它才能使包含生效。这里有一个更好的答案。
使用名为IDLE2HTML.py的空闲扩展名(搜索此扩展名)。
这允许空闲打印到样式表中有颜色的HTML文件。
然后将HTML文件保存为PDF格式(颜色仍将保留)。一个好的简单解决方案是使用IDLE2HTML,IDLE的扩展名。
该工具允许IDLE将代码从编辑器窗口(或交互式shell)保存到HTML文件中,
CSS格式中包含颜色。在此之后,可以打印文件(按要求)或将其格式化代码与其他程序(如文字处理器)一起使用。
目前下载Python文件并查看一些说明的可靠网站是Python包索引(PyPI)-该页面是或内置到较新Python版本的
pip
模块可以为您安装这些文件
这种方法的一个有用的优点是,它从空闲中获取颜色格式,而不是花时间分析代码和使用存储的颜色(许多其他解决方案都是这样做的)。这意味着它使用实际的配色方案,并与不同的闲置主题(如“闲置黑暗”)协同工作。这将导致使用更少的资源和更短的代码。此外,当前扩展名(2.0版)可能会进行调整,以便在保存数据时使用不同的文件格式,因为它的代码非常简单 有关其工作原理的一些详细信息: 由于该工具是作为扩展运行的Python代码,因此它可以访问IDLE提供的特殊变量,该变量包含有关编辑器窗口的数据。
idlelib
Python扩展名(运行编辑器)的extend.txt
文件描述了名为editwin
的变量:
空闲扩展类是用一个参数实例化的,
`editwin',一个EditorWindow实例
它还包括一些关于扩展IDLE的其他文件,如“config main.def”和“config extensions.def”。官方Python文档提供了更多信息
安装说明:
将IDLE2HTML.py复制到python安装的“idlelib”文件夹中。将“config extensions.txt”的内容附加到“config extensions.def”文件(也在idlelib文件夹中),然后重新启动IDLE 如何使用: 从“选项”菜单中选择“另存为HTML”,并在文件对话框窗口中指定文件名。立即创建HTML文件 在Python3.x中工作的代码调整:
目前,IDLE2HTML扩展(版本2.0)在对Python模块附带的固定版本中的代码进行小改动之前,不会与Python 3.x一起使用。 这里是一个文件比较,在屏幕截图的左边是原始版本,右边是固定的IDLEX版本
描述:如果Python版本是Python 3.x,请使用
import tkinter as tkinter
而不是import tkinter
和import tkinter.filedialog as tkFileDialog
而不是import tkFileDialog
。显示的代码使用if/else块中内置的“sys”模块中的sys.version
来运行正确的代码。最简单的方法是使用打开“.py”文件,在那里您可以选择和修改设置和首选项(python代码的任何主题),以将python文件导出为彩色PDF文件(使用PDF虚拟打印机)或直接打印:-)
或
如果您正在使用,则只需安装()扩展,然后在安装后: