首页 > 代码库 > 列表,元组,字典的异同
列表,元组,字典的异同
列表:[ ]
特点:可修改
基本操作:
索引 []
切片 []
追加 append
删除 del
长度 len
包含 in
eg:
>>>name_list = (‘hello‘,‘jacky‘,‘dick‘)
>>> delname_list[0]
Traceback (mostrecent call last):
File "<stdin>", line 1, in<module>
TypeError:‘tuple‘ object doesn‘t support item deletion
>>>type(name_list)
<type‘tuple‘>
>>>name_list = [‘jacky‘,‘dick‘,‘hello‘]
>>>id(name_list)
35733128L
>>>name_list.append(‘hu‘)
>>>name_list
[‘jacky‘, ‘dick‘,‘hello‘, ‘hu‘]
>>>id(name_list)
35733128L
>>> delname_list[0]
>>>name_list
[‘dick‘, ‘hello‘,‘hu‘]
把列表用哪种方式变成字符串:
>>>"_".join(name_list)
‘dick_hello_hu‘
>>>len(name_list)
3
>>>name_list
[‘dick‘, ‘hello‘,‘hu‘]
>>>"jacky" in name_list
False
元组:()
特点:不可修改
基本操作:
索引 []
切片 []
长度 len
包含 in
[‘dick‘,‘hello‘, ‘hu‘]列表
(‘dick‘, ‘hello‘,‘hu‘) 元组
[
‘dick‘,(‘jacky‘,‘kirk‘)
]
列表包含两个元素:
第一:字符串
第二:元组
增删改:最小单元
#切片,索引(-1),长度,包含,循环
str:重新开辟内存空间
list:修改后还是使用原来的内存空间
tuple:不允许修改
name_list =[‘liu‘,‘zhang‘,‘huang‘]
For ele in name_list
print ele
# 1,ele = liu
# 2,ele = zhang
# 3,ele = huang
if ele == ‘zhang‘:
print ‘sb‘
#本次循环不再继续执行
continue
if ele == ‘liu‘:
print ‘find‘
break
#跳出整个循环
#for
#continue
#break
While 条件:
print ‘xxx’
条件=真true:循环
条件=假false:不循环
While True:
print ‘xxxx’
Flag = True
While flag:
print ‘jjjj’
flag = False
Print ‘vvvv’
dict,字典,键值对
Person = {
"name": ‘dick‘,
"age":18,
"gender":‘man‘
}
#每个元素都是一个键值对(key和value)
字典也可以通过"索引"来找,对应字典的键来找:
Person[‘name‘]
dict_test.py:
person = {
"name":"dick",
"age":29,
"gerder":‘man‘,
}
#person.keys() #所有key 拿出来保存为列表
#person.values() #所有value 拿出来保存为列表
#person.items() #所有元素# 所有键值对
For k,v in person.items():
print k
print v
print ‘===========‘
执行结果:
E:\>pythondict_test.py
gender
man
===========
age
29
===========
name
dick
===========
字典无序,特殊的for循环
Keys() ——> 列表
values() ——> 列表
items() ——> 仅for循环时,使用,将元素赋值
列表,元组,字典的异同