我来自 C,python 对我来说是新的。我知道插入和追加都可以完成将元素追加到列表的相同任务。
// 这只是一个 示例
使用附加:
x: list[int] = []
total_elements: int = 0
# inserting
for i in range(5):
x.append(i)
total_elements += 1
# printing
for element in x:
print(f"{element} ", end = "")
print(f"\n{total_elements} elements in list")
并使用插入:
x: list[int] = []
total_elements: int = 0
# inserting
for i in range(5):
x.insert(total_elements, i)
total_elements += 1
# printing
for element in x:
print(f"{element} ", end = "")
print(f"\n{total_elements} elements in list")
两者都会输出:
0 1 2 3 4
5 elements in list
比如说,我的名单不断增加。并说我也想跟踪元素的数量。 insert() 可以访问最后一个索引之后的索引(例如,列表大小为 100,我可以这样做
x.insert(total_elements, num)
。
插入和追加哪一个在时间消耗上会更好、更高效?
编辑:抱歉,如果我的问题有点误导。链接的问题是关于 PREPENDING,而不是附加。在发布我的问题之前,我已经阅读了该问题以及建议的答案,
insert(0,item)
很糟糕,因为它会移动数组中的所有指针。我想问的是APPENDING,因为我使用insert(total_elements, item)
来追加。我也想跟踪元素的数量。
也感谢您使用
for element in x:
指出更具可读性和更高效的打印代码
Append 的 O(1) 效率更高,因为它总是添加到列表的末尾。 O(n) 的插入效率较低,因为它会在项目周围移动,因为它需要处理在中间插入的情况。 希望这有帮助