python的列表就是数组和php的Array和java的List一样
元组相当于java和php的Enum
字典相当于java的Map,php的关联数组
python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能
以下是 Python 中列表的方法:
方法 描述
list.append(x) 把一个元素添加到列表的结尾,相当于 a[len(a):] = [x]
list.extend(L) 通过添加指定列表的所有元素来扩充列表,相当于 a[len(a):] = L
list.insert(i, x) 在指定位置插入一个元素第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个列表之前,而 a.insert(len(a), x) 相当于 a.append(x)
list.remove(x) 删除列表中值为 x 的第一个元素如果没有这样的元素,就会返回一个错误
list.pop([i]) 从列表的指定位置删除元素,并将其返回如果没有指定索引,a.pop()返回最后一个元素元素随即从列表中被删除(方法中 i 两边的方括号表示这个参数是可选的,而不是要求你输入一对方括号,你会经常在 Python 库参考手册中遇到这样的标记)
list.clear() 移除列表中的所有项,等于del a[:]
list.index(x) 返回列表中第一个值为 x 的元素的索引如果没有匹配的元素就会返回一个错误
list.count(x) 返回 x 在列表中出现的次数
list.sort() 对列表中的元素进行排序
list.reverse() 倒排列表中的元素
list.copy() 返回列表的浅复制,等于a[:]
python集合是一个无序不重复元素的集基本功能包括关系测试和消除重复元素
可以用大括号({})创建集合注意:如果要创建一个空集合,你必须用 set() 而不是 {} ;后者创建一个空的字典,下一节我们会介绍这个数据结构
python字典以关键字为索引,关键字可以是任意不可变类型,通常用字符串或数值而列表是以连续的整数为索引
理解字典的最佳方式是把它看做无序的键=>值对集合在同一个字典之内,关键字必须是互不相同
一对大括号创建一个空的字典:{}
test.py
#!/usr/bin/python3
#列表操作
list=[1,2,3,4,5,6,7];
print(list.count("d"))
list.insert(1,"b")
list.append(8);
list.remove(7);#7和"7"不一样的
print(list)
print(list.index(2))
print(list.reverse());
#有字符串和数字时无法排序
#print(list.sort())
#集合操作
lang={"php","java","js","android","python","sql"}
print(('java' in lang))
b=set("abcda") #会去重
c=set("defgg")
print(b)
print(b-c) #在b但不在c中
print(b&c) #在b也在c中
#字典操作
tel={"wang":8080,"li":27017,"chen":11211}
tel["wu"]=6379;
print(tel)
del tel["wu"]
print(tel)
print(tel.keys())
print("wang" in tel)
print("jiang" in tel)
for k,v in tel.items():
print(k,v)
执行结果
[root@localhost pythonCode]# python3 test.py
2
['d', 'b', 'd', 1, 2, 3, 4, 5, 6, 8]
4
None
True
{'b', 'c', 'd', 'a'}
{'b', 'c', 'a'}
{'d'}
{'wang': 8080, 'chen': 11211, 'wu': 6379, 'li': 27017}
{'wang': 8080, 'chen': 11211, 'li': 27017}
dict_keys(['wang', 'chen', 'li'])
True
False
wang 8080
chen 11211
li 27017