【问题标题】:Append to a list python based on a second list with multiple rows基于具有多行的第二个列表附加到列表 python
【发布时间】:2021-04-30 07:11:39
【问题描述】:

假设,假设我有两个包含如下数据的列表,并且列表 A 有多个行,我通过 for 循环将它们写入 csv。

A = [Date, Round Number, Score, FirstName]
B = [FirstName, Surname]

A 的每一行都是体育比赛中的不同回合。列表B 包含每个玩家的FirstNameSurname。此数据是从 GraphQL API 查询中收集的。

CSV中有100行A(100轮),列表B有20行(20名玩家)。

问题: 我如何能够在他们的FirstName 的每个实例之后将玩家的Surname 附加到列表A 中?

免责声明:我没有代码背景,这是我第一次尝试python项目。

我已经查看了这篇文章,但如果不替换我就找不到。 Update list elements based on a second list as index

【问题讨论】:

  • 见 python pandas 。如果您没有编码背景,那么搜索是比询问更好的选择。所以使用stackoverflow作为搜索工具而不是询问工具。如果你是初学者,你可以在 Gitter、IRC Freenode、Discord 等上提问。
  • 听起来 A 和 B 是列表的列表。对吗?

标签: python list csv append


【解决方案1】:

以下代码将解决您的问题:

A = [["Date", "Round Number", "Score", "FirstNameA"],
    ["Date", "Round Number", "Score", "FirstNameB"],
    ["Date", "Round Number", "Score", "FirstNameC"]]

B = [["FirstNameC", "SurnameC"],
    ["FirstNameA", "SurnameA"],
    ["FirstNameB", "SurnameB"]]

for round in A:
    for player in B:
        if player[0] == round[-1]:
            round[-1] += " " + player[-1] #Append to last index of round to last index of player

print(A)

输出:

[['Date', 'Round Number', 'Score', 'FirstNameA SurnameA'], ['Date', 'Round Number', 'Score', 'FirstNameB SurnameB'], ['Date', 'Round Number', 'Score', 'FirstNameC SurnameC']]

【讨论】:

    猜你喜欢
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-24
    • 2021-10-02
    • 1970-01-01
    • 2023-03-23
    • 2020-03-04
    相关资源
    最近更新 更多