python - 通过组合字符串python变量调用

标签 python list

我有 2 个列表,它们像一个人一样相互依赖,他/她来自哪里。
我想根据他们来自哪里来分组。

People = ["A","B","C","D","E","F"]
City = ["Bombay","Delhi","Pune","Pune","Bombay","Pune"]
这里,A 来自孟买,B 来自德里,等等。我想将所有来自孟买的人归为一组,德里归为一组,浦那归为一组。
然后我想给每个组分配一些任务,比如孟买的人做任务 X,德里的人做任务 Y,浦那的人做任务 Z。
我怎么能在python中做到这一点?
一个组就像一个列表。
例子:
Bombay = ["A","E"]
Delhi = ["B"]
Pune = ["C","D","F"]

最佳答案

使用 itertools.groupby

from itertools import groupby

data = sorted(zip(People, City), key=lambda x: x[1])
for k, g in groupby(data, key=lambda x: x[1]):
    g = [x[0] for x in g]
    print(f'{k} = {g}')
输出:
Bombay = ['A', 'E']
Delhi = ['B']
Pune = ['C', 'D', 'F']

关于python - 通过组合字符串python变量调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63617050/

相关文章:

python - 添加df列以在另一个df中找到与索引值和动态源列都匹配的值?

python - 如何在Python中有效计算(稀疏)位矩阵上的矩阵乘积

c# - 从字典值中获取所有项目,这些值也是项目列表

python - 根据 Python 中的月份列表制作列表

python - Pandas 重采样的问题

python - 在python的List中通过其成员查找对象

c# - 将类型的通用容器转换为继承类型的容器?

python - 为 Python 3.x 安装 Pip

python - 从矩阵创建掩码

python - 超过 1000 个主机的 pysnmp 扭曲客户端中的未处理错误