草庐IT

Interpreter

全部标签

python - 在 python 文件中指定编码时,python 中的 "magic lines(s)"如何工作?

有时我会在python文件的开头(第一行)阅读#-*-coding:utf-8-*-有时我会阅读#encoding:utf-8这两行似乎做同样的事情:将utf8指定为文件中所有文本的编码。我有问题:为什么这有效?我认为解释器会忽略#之后的所有内容,因为它会调用注释。上面两行有什么区别?解释器是否只是忽略-*-? 最佳答案 这两种形式是等价的。-*-版本是Emacs理解的一种特殊注释。参见PEP263获取更多信息。如果像这两种形式中的任何一种形式的注释是文件的前两行之一,解释器将使用指定的编码来读取文件。

python - 同时使用调试器和 curses?

我正在调用python-mpdbmyapp.py,当异常触发时,我通常会返回到pdb解释器来调查问题。但是,在我通过curses.wrapper()调用并进入curses模式后抛出此异常,从而使pdb解释器无用。我该如何解决这个问题? 最佳答案 James的回答很好,我投了赞成票,但我也会考虑尝试拆分程序的逻辑层和表示层。将curses部分保留在库之上的一个薄层,并编写一个简单的驱动程序来调用正确的例程来重现错误。然后你可以潜入并做必要的事情。我能想到的另一种方法是创建一个名为debug的函数,或者让您回到常规屏幕并调用pdb的东西

python - 在 Python 解释器中重新加载

$python>>>importmyapp>>>reload(myapp)>>>ctrl+D$python>>>frommyappimport*>>>reload(myapp)Traceback(mostrecentcalllast):File"",line1,inNameError:name'myapp'isnotdefined为什么这会有不同的表现?使用frommyappimport*时如何重新加载? 最佳答案 来自http://docs.python.org/library/functions.html#reload:Ifam

java - 使用 Python 构建编译器或解释器

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion现在我正在写我的博士提案,为Java的新规范语言构建语言处理器(参见JML或C#的Spec#),并且需要确定一个实现工具以开始开发。语言的研究方面(语法、语义、理论结果)与我选择的实现正交,所以出于我自己的原因我想使用Python(2.6+)。最终产品将是一个编译器或解释器,能够验证用Java编写的程序的某些指定属性。在Python中构建编译器/解释器的最佳框架/库是

python - 在执行具有无效语法的脚本时检查 Python 解释器的版本

我有一个使用Python2.6版语法的Python脚本(除了error作为value:)2.5版提示。因此,在我的脚本中,我包含了一些代码以在继续之前检查Python解释器版本,这样用户就不会遇到严重错误,但是,无论我将代码放在哪里,它都不起作用。一旦遇到奇怪的语法,它就会抛出语法错误,而忽略我的任何版本检查尝试。我知道我可以简单地在出现SyntaxError的区域上放置一个try/exceptblock并在那里生成消息,但我想知道是否有更“优雅”的方法。因为我不太热衷于在我的代码中放置try/exceptblock来解决版本问题。我研究过使用__init__.py文件,但用户不会将我

python - 在 Python 解释器中调试代码

我喜欢在Python解释器中测试函数。当我想查看的不仅仅是返回值和副作用时,是否可以在Python解释器中调试函数?如果是这样,您能否展示基本的调试器操作(使用参数启动函数、设置断点、下一步、进入、观察变量)?如果不是,您将如何以其他方式调试函数?重点是,我只想调试将提供参数的特定函数。我不想调试整个模块代码。谢谢你的建议 最佳答案 如果你想调试特定的功能,你可以使用这个->>>importpdb>>>importyourmodule>>>pdb.run('yourmodule.foo()')通过命令行。pdb.set_trace(

python - 在 Python 解释器中调试代码

我喜欢在Python解释器中测试函数。当我想查看的不仅仅是返回值和副作用时,是否可以在Python解释器中调试函数?如果是这样,您能否展示基本的调试器操作(使用参数启动函数、设置断点、下一步、进入、观察变量)?如果不是,您将如何以其他方式调试函数?重点是,我只想调试将提供参数的特定函数。我不想调试整个模块代码。谢谢你的建议 最佳答案 如果你想调试特定的功能,你可以使用这个->>>importpdb>>>importyourmodule>>>pdb.run('yourmodule.foo()')通过命令行。pdb.set_trace(

python - 使 decimal.Decimal 成为 Python 中的默认数值类型

有什么方法可以让decimal.Decimal成为Python中所有数值的默认类型吗?我希望能够以类似于bc和dc程序的方式使用Python,而不必为每个数字调用decimal.Decimal(...)。编辑:对于初学者:bc.编辑2:谢谢tokenizemodule.. 最佳答案 在tokenize模块文档的底部,有一个函数可以完全满足我的需要:Python3:“ExampleofascriptrewriterthattransformsfloatliteralsintoDecimalobjects”Python2:“Exampl

python - 使 decimal.Decimal 成为 Python 中的默认数值类型

有什么方法可以让decimal.Decimal成为Python中所有数值的默认类型吗?我希望能够以类似于bc和dc程序的方式使用Python,而不必为每个数字调用decimal.Decimal(...)。编辑:对于初学者:bc.编辑2:谢谢tokenizemodule.. 最佳答案 在tokenize模块文档的底部,有一个函数可以完全满足我的需要:Python3:“ExampleofascriptrewriterthattransformsfloatliteralsintoDecimalobjects”Python2:“Exampl

javascript - 是否可以从 *Python* Google App Engine 实例执行服务器端 javascript?

Alot的questions已被问及关于在GoogleAppEngine上运行服务器端javascript的问题和答案,但所有答案都涉及Java实例,以便使用基于Java的JS解释器,如Rhino,RhinoforWebapps等有什么方法可以在PythonGAE实例上执行服务器端javascript代码吗?我在想一些完全符合pyv8的事情,但支持AppEngine(我猜这意味着解释器的纯python实现)。目前我能想出的唯一解决方案是使用某种粗暴的技巧并排运行Java和PythonGAE实例(通过不同的版本),这样它们就可以与同一个数据存储对话,让Java实例承载JS代码,并使用AP