python数组与js数组(list)对比


本文和大家分享的是python数组与js数组相关内容,一起来看看吧,希望对大家学习python有所帮助。

创建

基本相同

js

var person = [’xiaohong’,’wangwei’,’liudehua’];

python

person=[’xiaohong’,’wangwei’,’liudehua’]

访问元素

基本相同

js

person[0] //xiaohong

python

>>> person[0]’xiaohong’

切片

这块不一样,js用slice函数,python没用这个同样完成切片,此外,js里面是逗号,python语法里是冒号。一个是括号,一个是中括号。

js

person.slice(0,2) // ["xiaohong", "wangwei"]

python

>>> person[0:2]

[’xiaohong’, ’wangwei’]

获取元素索引

一个明明为indexof,一个命名为index,半斤八两

js

person.indexOf(’xiaohong’) //0

python

>>> person.index(’xiaohong’)0

向末尾添加新元素

js起名叫push,python起名叫append

js

person.push(’daniu’)  //4

person   // ["xiaohong", "wangwei", "liudehua", "daniu"]

python

>>> person.append(’daniu’)>>> person

[’xiaohong’, ’wangwei’, ’liudehua’, ’daniu’]

删除元素

js pop删除最后一个,shift删除第一个。python指定索引随便删,也有pop,没有shift

js

person.pop()"daniu"

person

(3) ["xiaohong", "wangwei", "liudehua"]

person.shift()"xiaohong"

person

(2) ["wangwei", "liudehua"]

python

>>> person.pop()’daniu’>>> person

[’wangwei’, ’liudehua’]

>>> del(person[0])>>> person

[’wangwei’, ’liudehua’, ’daniu’]

排序

基本一样,都是sort方法

js

person.sort()

(3) ["daniu", "liudehua", "wangwei"]

python

>>> person.sort()>>> person

[’daniu’, ’liudehua’, ’wangwei’]

反转

基本一样

js

person.reverse()

(3) ["wangwei", "liudehua", "daniu"]

python

>>> person.reverse()>>> person

[’wangwei’, ’liudehua’, ’daniu’]

连接数组

js

js用contact,python用extend

var arr = [’A’, ’B’, ’C’]

var added=arr.concat([1,2,3])

added //(6) ["A", "B", "C", 1, 2, 3]

python

>>> arr = [’A’, ’B’, ’C’]>>> arr.extend([1,2,3])>>> arr

[’A’, ’B’, ’C’, 1, 2, 3]

join

应该说python这么写略奇葩

js

var arr = [’A’, ’B’, ’C’, 1, 2, 3]

arr.join(’-’)"A-B-C-1-2-3"

python

>>> arr = [’A’, ’B’, ’C’]>>> ’-’.join(arr)’A-B-C’

元组

元组是不可变的,js无元组,如果需要,大概会有什么变通之法?

js

python

>>> s=(1,2,3)

>>> s.pop()

Traceback (most recent call last):

File "<PYSHELL#46>", line 1, in

s.pop()

AttributeError: ’tuple’ object has no attribute ’pop’

字典

js

无但是可以用数组变通实现

python

>>> phonebook = {’Alice’:’2341’,’Beth’:’9102’,’Ceil’:’3258’}>>> phonebook

{’Beth’: ’9102’, ’Ceil’: ’3258’, ’Alice’: ’2341’}

总结

可以看出python为了简化写法整了不少东西,比如同样是切片,python就比js少码很多字。

来源:简书

时间: 2024-11-23 21:36:47

python数组与js数组(list)对比的相关文章

将php数组转js数组,js如何接收PHP数组,json的用法

首先下载下面这个文件(这是一段是别人写出来专门解析json的代码),然后引入这个文件! http://pan.baidu.com/s/1dD8qVr7 现在当我们需要用ajax与后台进行交互时,怎样将php的数组传送到js文件并且并js所识别? 先看php文件,当我们获取到$arr这个数组后 foreach ($arr as $value) { $json .= json_encode($value) . ','; } echo '[' . substr($json,0,strlen($json

C#数组、js数组、json

C#数组 参考地址C#之数组 什么是数组?数组是一种数据结构,包含同一个类型的多个元素.数组的声明:int[] myIntArray; 注:声明数组时,方括号 [] 必须跟在类型后面,而不是变量名后面.在 C# 中,将方括号放在变量名后是不合法的语法.数组的初始化:我们知道数组是引用类型,所以需要给他分配堆上的内存.1.myIntArray = new int[3];2.myIntArray = new int[] { 1, 2, 3 };3.int[] myIntArray = { 1, 2,

php数组以及js数组方法整理

在js中数组非常经常用到,熟练掌握数组的方法能够大大的提高对自己的变成效率,最近解除php,学得非常皮毛,遇到一个问题,自己一直陷入foreach循环如何解决的死循环中.结果一直没能很好的解决,回来讨教了一下同学,更加觉得数组的一些方法很好用,所以有必要整理一下数组的一些方法,希望自己能牢记它们. 一,js数组的操作方法: 参照w3c内容:http://www.jb51.net/w3school/js/jsref_obj_array.htm 以及<javascript权威指南>和<jQu

javascript数组去重 js数组去重

数组去重的方法 一.利用ES6 Set去重(ES6中最常用) function unique (arr) { return Array.from(new Set(arr)) } var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}]; console.log(unique(arr))  //[1,

JS中集合对象(Array、Map、Set)及类数组对象的使用与对比

原文地址 在使用js编程的时候,常常会用到集合对象,集合对象其实是一种泛型,在js中没有明确的规定其内元素的类型,但在强类型语言譬如Java中泛型强制要求指定类型. ES6引入了iterable类型,Array,Map,Set都属于iterable类型,它们可以使用for...of循环来遍历,都内置forEach方法. 数组 遍历 普通遍历 最简单的一种,也是使用频率最高的一种. let arr = ['a', 'b', 'c', 'd', 'e'] for (let i = 0; i < ar

JS数组与PHP数组的对比

一.分类与创建 1:JS的数组都是索引数组,数组是一种特殊的对象,创建数组的方式有两种 //方式一 var arr1 = ['关羽', '张飞', '赵云', '马超', '黄忠']; //方式二 var arr2 = new Array(); arr2[0] = '关羽'; arr2[1] = '张飞'; arr2[2] = '赵云'; arr2[3] = '马超'; arr2[4] = '黄忠'; 2:PHP数组分为索引数组和关联数组,创建方式也有两种 //方式一(索引数组) $arr1 =

js数组学习整理

原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); //长度为3 var colors = new Array('red','blue');//初始化 其中,在声明数组的时候,去掉new操作符,也可以. 还有一种初始化数组的方式,使用数组字面量表示法 . 数组字面量由一对包含数组项的方括号表示,多个数组项之间用逗号隔开. var colors = [ '

js 数组的所有操作

js的数组操作有很多,这里记录了常用的和不常用的数组操作方法. 一.数组的创建 数组的创建有两种方法,一种是通过字面量,另一种是通过Array构造函数. 1.字面量 var num1 = [1,2,3]; 值得注意的是,利用字面量创建数组时,不可在最后一个数组元素添加",",因为在老版本的浏览器中,会出现bug.如下面的例子,在num2中,会创建一个包含1,2,3,undefined四个项或包含1,2,3三个项的数组. var num2 = [1,2,3,];//不推荐的写法 2.Ar

js数组去重的三个方法

在工作上,对json数据处理时,例如遇到对某些产品的尺码进行排序,不同的产品都有相同的尺码那是正常不过的事情,如果我们要把这些转成表格的形式来展现,那么这些尺码就不要不能重复才行.在这里呢,我就写几个数组去重的方法,给大家参考参考: 方法一:对数组进行先排序,排完序之后在让元素与前一个元素做对比,相同的就去掉 说明:该方法用到的是sort()方法和slice(),下面我直接贴代码上来,里面有注释说明,相信大家肯定是看得懂的 var arr = ['a', 'b', 'c', 'd', 'e',