- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我发现了一个错误,其中 io.open()
应该被传递 'utf-8'
而不是 'utf8'
.下面的最小可执行代码。为什么 IPython 回溯不指示行号,为什么 pdb既不报告 io.open 函数调用中的错误,也不报告 io.open 代码中的任何内容?我可以使用 pdb
或 IPython 调试器或 Canopy debugger 做什么?在它之上分层以便更轻松地调试这个?
检查我的 IPython 版本也很困惑。 Canopy 包管理器报告已安装 ipython 4.0.0-3
和 ipython4 4.0.0-9
,但 import IPython
后跟 IPython.version_info
的计算结果为 (2, 4, 1, '')
。
my_module.py
:
import io
def my_function(filename):
with io.open(my_other_function(filename), u'r', u'utf8')
def my_other_function(text):
return u'modified' + text
在 IPython session 中:
In []: import pdb
In []: import my_module
In []: my_module.my_function(filename)
-------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-5-4c50d9f6cb5c> in <module>()
----> 1 my_module.my_function(filename)
C:\my_module in my_function(filename)
TypeError: an integer is required
In []: pdb.pm()
> c:\users\bbrown\documents\github\canvasapi-python\capi\my_module.py(3)my_function()
-> with io.open(my_other_function(filename), u'w', u'utf8') as filehandle:
(Pdb) up
> <ipython-input-14-f6d6cc2c1670>(1)<module>()
-> my_module.my_function('testjunk')
(Pdb) down
> c:\users\bbrown\documents\github\canvasapi-python\capi\my_module.py(3)my_function()
-> with io.open(my_other_function(filename), u'w', u'utf8') as filehandle:
(Pdb) args
filename = testjunk
(Pdb) down
*** Newest frame
鉴于 'utf-8'
作为参数工作正常,TypeError
令人惊讶,除非源自 open
的代码,但对 open
的调用并未放置在堆栈上,至少无法从 pdb
进行导航。感谢您帮助我和其他人学习如何更有效地调试!
最佳答案
io.open
是一个内置函数:
In [8]: import io
In [9]: type(io.open)
Out[9]: builtin_function_or_method
它不是用 Python 编写的,因此调试器无法调试任何内容。您的错误是由于传递到 io.open 的参数不正确导致的:
open(file, mode='r', buffering=-1, encoding=None,
errors=None, newline=None, closefd=True, opener=None) -> file object
您传递了 'utf-8'
作为第三个参数,但由于 buffering
应该是一个整数,因此该函数引发了一个描述性的 TypeError
.您可以通过将 encoding
设置为关键字参数来修复它:
io.open(filename, mode='r', encoding='utf8')
此外,您不需要显式导入 io
模块。 open
内置函数是完全相同的函数:
In [15]: open
Out[15]: <function io.open>
关于python - 如何在Python中调试: Why doesn't pdb descend into function call?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34559786/
我希望能够选择类 zz 的所有元素,这些元素是类 xx 的元素的后代,但不是类 yy 的后代。 考虑以下几点: ... arbitrary depth ...
给定以下 HTML: li > a { color: black } ul a { color: black } 最佳答案 The most fundamental conc
假设树结构如下:(丑陋的遗留布局,抱歉) (1) dont want to select this one
这是我的 RadixSort 函数(升序): void RadixSort (int a[], int n) { int i, m=0, exp=1, b[MAX]; for (i=0
我有以下 SP CREATE PROCEDURE GetAllHouses set @webRegionID = 2 set @sortBy = 'case_no' set @
我知道你实际上无法从记录中继承任何内容,但我不知道如何用一句话总结我的问题。如果需要,请编辑标题。 我在这里想做的是创建一个某种泛型类型的数组,它可以是 X 种类型之一,该数组将填充这些自定义类型(它
我正在尝试将 Silverlight DataGrid 绑定(bind)到 WCF 服务调用的结果。我没有看到网格中显示的数据,所以当我运行调试器时,我注意到 XDocument.Descendant
我有一个简单的 XML, 我想找到所有“H”节点。 XElement x = XElement.Parse(""); IEnumerable h = x.Descendants("H"); if (
使用 beautifulsoup 时 soup.descendants迭代器,生成的标签是否保证以任何特定顺序返回?由于文档提到事物是递归迭代的,所以我猜测事物是按 DFS 顺序返回的,但我不确定这是
我无法弄清楚如何更新一行的后代/子代。示例表,命名为 test +----+--------+------+ | Id | Parent | Val | +----+--------+------+
我遇到了这样的情况:我需要在页面上选择不同的节点组,并且需要排除某些子元素。我最常见的任务是选择所有 元素,但不是某些元素的后代。 以我的 fiddle 为例:http://jsfiddle.net/
链接: http://jsbin.com/EFAlace/3/edit?html,css,output HTML: Hover over me! Weird link
你好,有一个像这样的 DOM,需要选择除 div.hidden 部分的后代元素之外的所有 a 元素。 Some text Email Alex Some more text
这个问题在这里已经有了答案: Is the CSS :not() selector supposed to work with distant descendants? (2 个答案) 关闭 5 年
6000 7000 2 5 3 6 9
XElement.Descendants () 方法接受要查找的元素的名称。 但是它是区分大小写的,有没有办法让它不区分大小写 最佳答案 你可以使用这个: element.Descendants()
我正在使用 React 路由器 dom Link 组件。它基本上是推特的主页。我希望能够在一个 div 组件中有两种类型的链接。一个是链接到用户的个人资料,另一个是发布。我目前收到警告,暂时找不到解决
是否有推荐的模式将 props 传递给 React 中的后代组件? 下面,我将 propcallback 传递给子组件: Master = React.createClass({ render:
在使用Selenium定位网页中的元素时,我使用了很多XPath,并且最近从使用node1 // node2转向使用node1 / descendant::node2。两种方法有什么区别?一个比另一个
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭13 年前。 Improve th
我是一名优秀的程序员,十分优秀!