itertools。子句[英] itertools.groupby

问题描述

Bejeezus.文档中对 groupby 的描述是一个典型的孩子
为什么文档需要用户评论.谁能给我解释一下
这个例子中使用了"uniquekeys"这个名字是什么意思:
导入迭代工具

mylist = [''a'', 1, ''b'', 2, 3, ''c'']

def isString(x):
s = str(x)
如果 s == x:
返回真
其他:
返回错误

唯一键 = []
组 = []
for k, g in itertools.groupby(mylist, isString):
uniquekeys.append(k)
groups.append(list(g))

打印唯一键
打印组

--输出:--
【真假真假真假】
[[''a''], [1], [''b''], [2, 3], [''c'']]

推荐答案

5 月 27 日上午 11:28,Steve Howell <showel...@yahoo.com 写道:
--- 7stud <bbxx789_0...@yahoo.com 写道:
贝吉祖斯.文档中对 groupby 的描述是
一个典型的孩子
为什么文档需要用户评论.有人可以吗

中向我解释这个名字"uniquekeys"是什么意思
例子: [...]

groupby 方法有它的用途,但它的行为是
任何使用过的人都会感到非常惊讶
"分组依据"SQL 的语法,因为 Python 的 groupby
如果您的数据未排序,方法将重复组,
而 SQL 拥有(知道它的)
使用有限的数据集,因此它可以提供
更方便的语义.

___________________________________ _________________________ _________你打盹,你输了.使用 AutoCheck 尽快获取消息
在全新的 Yahoo!邮件测试版.http://advision.webevents.yahoo.com/...mail_html.html
groupby 方法有它的用途
我愿意简单解释一下它在 python 中的作用.


2007 年 5 月 27 日星期日 10:17 -0700,7stud 写道:
贝吉祖斯.文档中对 groupby 的描述是一个典型的孩子
为什么文档需要用户评论.谁能给我解释一下
这个例子中使用了"uniquekeys"这个名字是什么意思:
导入itertools

mylist = [''a'', 1, ''b'', 2, 3, ''c'']

def isString(x):
s = str(x)
如果 s == x:
返回真
其他:
返回错误

唯一键 = []
组 = []
for k, g in itertools.groupby(mylist, isString):
uniquekeys.append(k)
groups.append(list(g))

打印唯一键
打印组

--输出:--
【真假真假真假】
[[''a''], [1], [''b''], [2, 3], [''c'']]
您从文档中引用的所谓示例不是实际的
使用 itertools.groupby 的示例,但建议您如何使用代码
如果您需要迭代两次,请存储分组,因为迭代器
一般是不可重复的.

因此,''uniquekeys'' 列出了与每个组对应的键值
在群组里''.groups[0] 是分组在
下的元素列表uniquekeys[0], groups[1] 是分组在
下的元素列表uniquekeys[1] 等.你得到了令人惊讶的结果,因为你的数据
不按组键排序.您的组密钥在 True
之间交替和错误.

或许你需要向我们解释一下你真正想要做什么.
用户提供的文档注释对此无济于事.

问候,

--
Carsten Haese
http://informixdb.sourceforge.net

7stud 写道:
贝吉祖斯.文档中对 groupby 的描述是一个典型的孩子
为什么文档需要用户评论.谁能给我解释一下
这个例子中使用了"uniquekeys"这个名字是什么意思:
这是我第一次接触这个功能,我看到它确实有
我的代码中的一些用途.但是,我同意这令人困惑.
如果使用当前的功能,IMO 可以减少混淆
行为被重命名为 ''telescope'' 或 ''compact'' 或 ''collapse'' 或
某些东西(因为它在同质上线性折叠可迭代
序列.)
然后,一个名为 groupby 的函数可以具有我认为的明确
为每个唯一类型的
只创建一个迭代器的隐含行为输入列表中的事物,按按键功能分类.

本文地址:https://www.itbaoku.cn/post/1050501.html