[python]-列表

1.列表

在Python中,用方括号[]来表示列表,用逗号来分隔元素,并且在输出(print)列表时也会将方括号展示出来。
要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
注:

  • 索引从0开始;第一个列表元素的索引为0,即第n位元素其索引为“n-1”;
  • 特殊索引:最后一个列表元素索引指定为-1,倒数第n个元素,其索引为“-n”:
  • 对字符串的操作同样适用于列表中的元素。
bicy = ['trek','cannondale','redline','specialized']
print(bicy[0]) #输出第一个元素
### trek
print(bicy[3]) #输出第4个元素
### specialized
print(bicy[-1]) #输出最后一个
### specialized
print(bicy[-3]) #输出倒数第3个
### cannondale

2.对列表进行操作

2.1 修改列表元素

要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。

bicy[0] = "duca"
print(bicy)

2.2 在列表中添加新元素

append()将元素添加到了列表末尾,该方法可以先创建空列表再存储数据;
insert()可在列表的任何位置添加新元素,需要指定新元素的索引和值;

moto = []
moto.append("hello")
print(moto)
###['hello']
moto.append("hello2")
moto.append("hello3")
print(moto)
### ['hello', 'hello2', 'hello3']

moto.insert(0,"hi")
print(moto)
### ['hi', 'hello', 'hello2', 'hello3']

2.3 从列表删除元素

可以根据位置或值来删除列表中的元素。

  • del():需要知道元素在列表中的位置,并且该命名表示彻底删除该元素。
  • pop():可移除列表任何位置的元素,并且能继续使用该元素。
    不指定位置时,则移除列表末尾的元素;
    指定位置:直接在括号内输入索引,如第n个pop(n-1)
  • remove():根据值移除元素,并且可以继续使用。
    【注】:remove()只删除第一个指定的值。如果要删除的值在列表中出现多次,需要使用循环来判断是否删除了所有这样的值。
## del():删除指定索引的元素
print(moto)
###['hi', 'hello', 'hello2', 'hello3']
del moto[1]
print(moto)
###['hi', 'hello2', 'hello3']

## pop():移除元素
pop_moto = moto.pop() #移除最后一个
print(moto)
###['hi', 'hello2']
print(pop_moto)
###hello3

print(bicy)
###['duca', 'cannondale', 'redline', 'specialized']
pop_bicy = bicy.pop(1) #弹出指定位置的元素
print(bicy)
###['duca', 'redline', 'specialized']
print(pop_bicy)


## remove() 删除指定值
print(bicy)
###['duca', 'redline', 'specialized']
bicy.remove("redline")
print(bicy)
###['duca', 'specialized']

bicy.append("nih")
bicy.append("nih")
print(bicy)
###['duca', 'specialized', 'nih', 'nih']
bicy.remove("nih")
print(bicy)
###['duca', 'specialized', 'nih']

3.组织列表

3.1 排序

  • sort():按字母对列表进行永久排序;
  • 函数sorted()对列表进行临时排序;

[注]:参数 reverse = True可以逆向排序;

print(bicy)
### ['duca', 'specialized', 'nih']
bicy.sort()  # 按首字母排序
print(bicy)
### ['duca', 'nih', 'specialized']
bicy.sort(reverse = True)  # 按字母反向排序;
print(bicy)
### ['specialized', 'nih', 'duca']

cars = ['bmw', 'audi', 'toydo', 'chnh']
print(cars)
### ['bmw', 'audi', 'toydo', 'chnh']
print(sorted(cars))  # 临时按字母排序
### ['specialized', 'nih', 'duca']
print(cars)
### ['bmw', 'audi', 'toydo', 'chnh']

3.2 reverse()反转列表元素顺序

reverse()永久性地修改列表元素的排列顺序

cars.reverse()
print(cars)
### ['chnh', 'toydo', 'audi', 'bmw']

3.3 len()获得列表长度

print(len(bicy))
### 3

你可能感兴趣的:([python]-列表)