- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一组 xml 数据,如下所示:
<widgets>
<widget number = 'a1'>
...
info regarding widget a1
...
</widget>
<widget number = 'a2'>
...
info regarding widget a2
...
</widget>
...
...
...
<widget number = 'a10000000000000000'>
...
info regarding widget a10000000000000000
...
</widget>
</widgets>
我正在解析文件,查找每个小部件的信息,一切进展顺利。
我正在寻找一种方法来生成“丢失”小部件的 csv。它们按数字顺序排列(即,a2 应该在 a1 后面,a3 应该在 a2 后面,等等),但可能会有一些缺失。
我已经需要从前面去掉“a”,但我不确定如何设置一些东西,如果有“跳过”,所有内容都会添加到“跳过”文件中。
也许,通过一个例子会更容易说明这一点。如果我有: ... ... ... ... 有关小部件 a10 的信息 ... ... 有关小部件 a12 的信息 ... ... ... ...我想要一个带有“a11”的列表,因为那是缺少的。
如果我有: ... ... ... ... 有关小部件 a17 的信息 ... ... 有关小部件 a20 的信息 ... ... ... ...我想要一份 list a18a19
等等。我知道如何将列表放入 csv 中,所以我真正想要的是如何通过确定存在跳过、评估跳过的大小然后使用 for 将条目添加到列表来生成第一个列表环形。
最佳答案
首先,我创建一个带有一些间隙的小部件的 xml 文件。然后,我使用 lxml 库解析它,并使用 xpath 表达式查找 widget
元素的集合。我从每个元素中挑选出 number
属性,然后在列表理解中挑选包含该数字的切片,以获取所有 available_widgets
的编号。
在这一点上,我采取了懦夫的出路:我假设可能的小部件数量的范围很小。我浏览 available_widgets
表示的范围,看看缺少哪些内容。
如果,事实上,您需要查看大量的可能性,那么您可能会在 SO 的某个地方找到查找列表或序列中间隙的方法。
>>> nums = [1,2,3,5,6,8,11,14,17,20]
>>> with open('temp.xml', 'w') as temp:
... r = temp.write('<widgets>')
... for num in nums:
... r = temp.write('<widget number="a%s">'%num)
... r = temp.write('info regarding widget a%s'%num)
... r =temp.write('</widget>')
... r = temp.write('</widgets>')
...
>>>
>>> from lxml import etree
>>> tree = etree.parse('temp.xml')
>>> widgets = tree.xpath('.//widget')
>>> available_widgets = [int(widget.attrib['number'][1:]) for widget in widgets]
>>> available_widgets
[1, 2, 3, 5, 6, 8, 11, 14, 17, 20]
>>> missing_widgets = []
>>> for num in range(min(available_widgets), max(available_widgets)+1):
... if not num in available_widgets:
... missing_widgets.append(num)
...
>>> missing_widgets
[4, 7, 9, 10, 12, 13, 15, 16, 18, 19]
关于Python:如何生成 "Missing Elements"的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45552290/
下面两个CSS选择器有什么区别? 来自解释here ,它们听起来一样吗? div p{} 选择div元素内的所有p元素 div > p{} 选择父级为 div 元素的所有 p 元素。 最佳答案 区别在
我需要怎么做: 目前,事实证明: 我更喜欢它看起来像: 最佳答案 有了这些空行,看起来您的 select 语句是(正确地)选择您
用替换元素是否有效至 .在这种情况下,我想要, 这样我就可以在...中附加验证数据。这也可以从 中实现吗?或 等等? 最佳答案 标签没有 而且不需要一个。同样适用于 和 .您可以将验证数据作为
我刚刚发现了 Angular 1.2.1 的一个奇怪问题,在 this fiddle 中进行了演示。 (在 IE、FF 和 Chrome 中测试):如果我创建一个非常简单的模板化指令,它无法像 那样
我正在尝试使用 Jsoup 迭代 java 中的两个元素,但是,我收到运行时异常错误。看来我无法将nodes.Element 的类型转换为element.Element。 非常感谢您的帮助,谢谢。 代
假设我的文档中有一组元素,它们是单个对象的子元素。这些元素中的每一个都使用不同的参数注册一个新的事件监听器。如果我丢弃父对象,是否需要手动取消注册所有 eventListener?或者浏览器是否跟踪所
我不应该在我的应用程序中使用 jQuery,但我有一个场景,我需要元素的偏移量,而不是使用 $(element).offset() 我已经使用了 angular.element(element).of
我是TS的新手,我想知道为什么我在以下代码中遇到类型错误(简化):。错误在`{iconMap[名称]}中:。“元素隐式具有‘any’类型,因为‘字符串’类型的表达式不能用于索引类型‘{Categori
我是TS的新手,我想知道为什么我在以下代码中遇到类型错误(简化):。错误在`{iconMap[名称]}中:。“元素隐式具有”any“类型,因为”string“类型的表达式不能用于索引类型”{ Cate
什么意思: Separator.Iterator.Element == Self.Iterator.Element.Iterator.Element 在this (Swift 标准库)swift 实例
是否可以在 img 元素上使用前后伪选择器?认为它是但没有任何运气,将 css 切换到 div 并且它工作正常。 .page-overhang 类是 img 元素。 // page overhang
我在 UI 中的按钮 Click 事件上有以下代码,它返回一个 MS-Excel 文件。它在第一次点击事件中完美运行,但之后返回以下错误。 任何建议,我怎样才能摆脱它? ERROR: Uncaught
如何在 CSS 中编写这个想法: 选择 ElementA 内但不在 ElementB 内且 ElementB 在 ElementA 内的每个元素。 这是一个例子:
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
如果我在 C# 中的 XElement myXML 变量中有以下 XML, myvalue 要获得“myvalue”,我需要执行以下操作: myXML.Element(
我找不到用户名和密码字段。我检查元素,并尝试通过 id、xpath 或 css 选择器查找它,但它给出错误 NoSuchElementException: Message: no such eleme
我的任务是在用户点击它时从输入框中删除占位符并使标签可见。如果用户未在其中再次填写任何内容,请放回占位符并使标签不可见。 我可以隐藏它但不能重新分配它。我试过 element.setAttribute
我正在编写一个 c# 类来编写一个 XML 文件,该文件需要与我们使用的现有 XML 的结构完全匹配,这样一些遗留系统就不会混淆。 当一个元素的InnerText值为null时,我需要xml元素的元素
自定义元素的一个常见做法,至少在 Polymer(最流行的 Web 组件框架)中,是定义一个新的自定义元素。恕我直言,这对 来说不是一个好习惯呈现 元素,因为该元素无法逐步呈现,必须等到它被加载(注册
我正在尝试跟踪元素的可见性及其显示的控制台错误:“元素“a[data-vars-ei]”必须是 AMP 元素”。 但是在点击跟踪的情况下,类似的事情工作正常。 我无法理解为什么会发生这种情况以及我应该
我是一名优秀的程序员,十分优秀!