list 定义
li = ['a', 'b', 'mpilgrim'
list 负数索引
li = ['a', 'b', 'mpilgrim', 'z', 'example']print(li[-1]) #输出倒数第1个;
输出结果:example
print(li[-3]) #输出倒数第3个值
输出结果;mpilgrim
print(li[1:3]) #从第2个元素起,输出2个元素
输出结果:['b', 'mpilgrim']
print(li[1:-1]) #从第2个元素起至倒数第2个止
输出结果:['b', 'mpilgrim', 'z']
print(li[0:3])
输出结果:['a', 'b', 'mpilgrim']
list 增加元素
li = ['a', 'b', 'mpilgrim', 'z', 'example']
li.append("new")
print(li)
输出结果:['a', 'b', 'mpilgrim', 'z', 'example', 'new']
li.insert(2,"new")
print(li)
输出结果:['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new']
li.extend(["two","elements"])
print(li)
输出结果:['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements
split 与 join 正好相反, 它将一个字符串分割成多元素 list。
注意, 分隔符 (";") 被完全去掉了, 它没有在返回的 list 中的任意元素中出现。
split 接受一个可选的第二个参数, 它是要分割的次数。
list 运算符
li = ['a', 'b', 'mpilgrim']
li = li + ['example', 'new']
输出结果:['a', 'b', 'mpilgrim', 'example', 'new']
li += ['two']
输出结果:['a', 'b', 'mpilgrim', 'example', 'new', 'two']
li = [1, 2] * 3
输出结果:[1, 2, 1, 2, 1, 2]
list 搜索
li = ['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']print( li.index("example") )
5
print (li.index("new") )
2
print (li.index("c") )
Traceback (innermost last):
File "<interactive input>", line 1, in ?
ValueError: list.index(x): x not in list
print( "c" in li )
False
list 删除元素
li = ['a','b','new','mpilgrim','z','example','new','two','elements']
li.remove('z')
li.remove("new") #删除首次出现的第一个值
print(li)
li.remove("c") #ValueError: list.remove(x): x not in list
li.pop() #删除最后一个元素'elements'
print(li)
list 分割字符串
#li = ['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']li = ['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret' ]
s = ";".join(li)
#按 “;”拆分
print(s)
输出结果:server=mpilgrim;uid=sa;database=master;pwd=secret
#按“,” 拆分
print(s.split(";"))
输出结果:['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']
使用join链接list成为字符串
params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret" }
print(["%s=%s" % (k, v) for k, v in params.items()])
输出结果:['server=mpilgrim', 'database=master', 'uid=sa', 'pwd=secret']
var = ";".join(["%s=%s" % (k, v) for k, v in params.items()])
print(var)
输出结果:server=mpilgrim;database=master;uid=sa;pwd=secret
List过滤操作
flag = "========================="
li = ["a","mpilgrim","foo","b","c","b","d","d"]#打印长度大于1的字符串
for elem in li:
if len(elem) > 1:
print(elem)
print(flag)
#输出不等于“b”的元素
for elem in li :
if elem != "b":
print(elem)
print(flag)
#过滤掉重复值
for elem in li:
if li.count(elem) == 1:
print(elem)