跳到主要内容

列表与数组:有序的收纳盒

创建列表/数组

加载代码编辑器中……

本质上一样的东西,只是名字不同:Python 叫 list,JS 叫 Array

访问和修改元素

加载代码编辑器中……
操作PythonJavaScript
第一个lst[0]arr[0]
最后一个lst[-1]arr.at(-1)
切片lst[1:3]arr.slice(1, 3)

注意 const 声明的数组可以修改内容const 只是说"变量不能重新赋值",不是说"内容不能改"。就像你买了一个柜子(const),柜子不能换,但里面的东西可以换。

增删操作

加载代码编辑器中……

方法对照表

操作PythonJavaScript
末尾添加.append(x).push(x)
开头添加.insert(0, x).unshift(x)
末尾删除.pop().pop()
开头删除.pop(0).shift()
指定位置删除.pop(i).splice(i, 1)
按值删除.remove(x).splice(arr.indexOf(x), 1)
合并a + b[...a, ...b]

常用方法

加载代码编辑器中……
🏋️AI 练习

给定一个成绩列表 [88, 92, 55, 77, 43, 95, 60, 82]

  1. 按从高到低排序
  2. 找出最高分和最低分
  3. 筛选出不及格(< 60)的成绩
  4. 计算平均分

用 Python 和 JS 各写一版。尽量用推导式/map/filter 而不是 for 循环。

小结

概念Python (list)JavaScript (Array)
创建[1, 2, 3][1, 2, 3]
长度len(lst)arr.length
添加.append().push()
排序sorted() 不改原列表.sort() 改原数组 ⚠️
求和sum().reduce()
包含x in lstarr.includes(x)
拼接" ".join(lst)arr.join(" ")