在列表中添加元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在列表中添加元素相关的知识,希望对你有一定的参考价值。

参考技术A 你可能出于众多原因要在列表中添加新元素,例如,你可能希望游戏中出现新的外星人、添加可视化数据或给网站添加新注册的用户。

Python提供了多种在既有列表中添加新数据的方式。

1.在列表末尾添加元素

在列表中添加新元素时,最简单的方式是将元素附加到列表末尾。给列表附加元素时,它将添加到列表末尾。继续使用前一个示例中的列表,在其末尾添加新元素'ducati':

motorcycles = ['honda', 'yamaha', 'suzuki']

print(motorcycles)

motorcycles.append('ducati') ❶

print(motorcycles)

方法append()将元素'ducati'添加到了列表末尾(见❶ ),而不影响列表中的其他所有元素:

['honda', 'yamaha', 'suzuki']

['honda', 'yamaha', 'suzuki', 'ducati']

方法append()让动态地创建列表易如反掌,例如,你可以先创建一个空列表,再使用一系列的append()语句添加元素。下面来创建一个空列表,再在其中添加元素'honda'、'yamaha'和'suzuki':

motorcycles = []

motorcycles.append('honda')

motorcycles.append('yamaha')

motorcycles.append('suzuki')

print(motorcycles)

最终的列表与前述示例中的列表完全相同:

['honda', 'yamaha', 'suzuki']

这种创建列表的方式极其常见,因为经常要等程序运行后,你才知道用户要在程序中存储哪些数据。为控制用户,可首先创建一个空列表,用于存储用户将要输入的值,然后将用户提供的每个新值附加到列表中。

2.在列表中插入元素

使用方法insert()可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。

motorcycles = ['honda', 'yamaha', 'suzuki']

motorcycles.insert(0, 'ducati') ❶

print(motorcycles)

在这个示例中,值'ducati'被插入到了列表开头(见❶);方法insert()在索引0处添加空间,并将值'ducati'存储到这个地方。这种操作将列表中既有的每个元素都右移一个位置:

['ducati', 'honda', 'yamaha', 'suzuki']

在列表的熊猫列中添加特定的列表元素[重复]

【中文标题】在列表的熊猫列中添加特定的列表元素[重复]【英文标题】:Adding specific list-elements in a pandas column of lists [duplicate] 【发布时间】:2020-03-13 16:29:14 【问题描述】:

我有一个 pandas 数据框,其中一列由列表组成:

import pandas as pd
df = pd.DataFrame("a" : [[1,2,3], [4,5,6], [7,8,9]])

我想添加,例如,每个列表的第一个和最后一个索引。为此我使用apply:

df['a'].apply(lambda x: x[0] + x[-1])

这单独作用于每一行,如果数据框很大,这可能会非常密集。有没有办法向量化这个操作?

【问题讨论】:

使用df.iloc[:, 0]+df.iloc[:, -1] @jezrael 请参阅 OP。抱歉,我在提出问题时(又犯了一个错误!)。现在应该是正确的。 【参考方案1】:

使用DataFrame.iloc:

df.iloc[0]+df.iloc[-1]
a     4
b    10
c    16
dtype: int64

【讨论】:

谢谢。我在我的 OP 中非常不清楚,对此我深表歉意 - 我需要 axis=1(请参阅更新后的帖子)

以上是关于在列表中添加元素的主要内容,如果未能解决你的问题,请参考以下文章

在python中怎么把列表中的元素添加到字典中

python怎么把列表中的元素添加到数组

python中列表增加元素的方法

python list怎么添加元素

列表连接,将以“:”结尾的元素添加到列表中,将其他元素添加到子列表中

python列表中依次插入不同元素