赞
踩
#创建空列表
>>> empty_list = [] # Method one
>>> empty_list = list() # Method two
#创建非空列表
>>> friends = ['You','They','Me']
# 将字符串转换成列表:
>>> list('goldsunC')
['g', 'o', 'l', 'd', 's', 'u', 'n', 'C']
# 将元组转换成列表:
>>> tuple = ('You','They','Me')
>>> list(tuple)
['You','They','Me']
>>> Mybirthday = '11/03/2000'
>>> Mybirthday.split('/')
['11','03'.'2000']
#Tip:一定要注意空格也是字符
>>> Myname = ['Chang','kang','ning']
>>> Myname[0]
'Chang'
>>> Myname[1]
'kang'
>>> Myname[-1]
'ning'
>>> Myname[-2]
'kang'
引用的偏移位对于待访问列表必须有效——该位置的元素在访问前已经正确赋值,当指定的偏移位小于起始位置或者大于末尾位置时,会产生异常。
>>> Myname = ['Chang','kang','ning']
>>> Myname[0:2]
['Chang','kang']
# 其提取方式与字符串相比是类似的,详细可参考上一章字符串的处理。
>>> emotion =['I','hate','you']
>>> emotion[1]='love' #同样,偏移位的引用也必须时合法的
>>> emotion
['I','love','you']
#创建列表 >>> Myname = ['Chang','kang','ning'] >>> emotion = ['I','love','you'] >>> friends = ['You','They','Me'] >>> whole = [Myname,emotion,friends,'friendship'] >>> whole [['Chang', 'kang', 'ning'], ['I', 'love', 'you'], ['You', 'They', 'Me'], 'friendship'] >>> whole[0] ['chang','kang','ning'] #这说明第一个元素还是一个列表,其实它就是Myname >>> whole[0][0] 'Chang' >>> whole[1][1] 'love' >>> whole[1][1][1] 'o' #这说明第一个[]指向whole的外层列表,而第二个[]指向whole的二层列表,第三个[]指向字符串。
函数名称 | 作用 |
---|---|
append(element) | 将element添加至列表尾部(其可以是任何元素) |
extend(list) or += | 将list合并至原列表(注意与append区分) |
insert(offset,element) | 在offset处插入element(偏移位可以溢出) |
remove(element) | 删除原列表中的所有element |
pop(offset)(none==-1) | 获取并删除offset处的元素 |
index(element) | 查询element在列表中的偏移位 |
count(element) | 记录element在列表中出现的总次数 |
sort() | 对列表进行排序同时改变原列表内容(数字升序或者字母升序),降序则在()中写入reverse=Ture |
sorted() | 返回排好序的列表副本,原列表内容不变 |
len(list) | 获取list的长度 |
#创建列表
>>> friends =['You','They','Me']
>>> del friends[1]
>>> friends
['You','Me']
#创建一个列表
>>> emotion =['I','love','you']
>>> result =' '.join(emotion)
>>> result
'I love you'
#创建一个列表
>>> emotion =['I','love','you']
>>> 'love' in emotion
True
>>> 'hate' in emotion
False
#一个列表中可能存在多个相同的值,但只要至少出现一次,in就会返回 True
>>> a =[1,2,3,4,5]
>>> b =a
>>> b
[1,2,3,4,5]
>>> b[0]=0
>>> b
[0,2,3,4,5]
>>> a
[0,2,3,4,5]
如果想将一个列表的值复制到另一个新的列表中,可以采用以下三种方法:
>>> a =[1,2,3,4,5]
>>> b =a.copy()
>>> c =list(a)
>>> d =a[:]
>>> a,b,c,d
([1,2,3,4,5],[1,2,3,4,5],[1,2,3,4,5],[1,2,3,4,5],[1,2,3,4,5])
使用这三种方法产生的b、c、d都是a的复制,它们是自身带有值得新对象,与原始的a所指向的对象没有任何关联,此时改变任何一个对象的值都不影响其它对象。
1.元组占用的空间较小
2.你不会意外修改元组的值以便防止程序发生雪崩式的漏洞
3.可以将元组作为字典的键
4.命名元组可以作为对象的替代
5.函数的参数是以元组的形式传递的
创建一个空元组用():
>>> empty_tuple =()
>>> empty_tuple
()
创建一个或者多个元素的元组时,每一个元素后面都要跟着一个逗号,即使只包含一个元素也不能省略,当创建的元组包含的元素大于1时,最后一个元素后面的逗号可以省略:
>>> Myname ='ChangKangning',
>>> Myname
('ChangKangning',)
>>> Myname ='Chang','kang','ning'
>>> Myname
('Chang','kang','ning')
在Python的解释器中输出元组时总会自动添加一对圆括号,而我们并不需要这样做-因为定义元组真正靠的是每个元素的后缀-“逗号”,不过你愿意加一对圆括号也可以,这样也会使得程序更加的清晰。
>>> Myname ='Chang','kang','ning'
>>> a,b,c =Myname
>>> a
'Chang'
>>> b
'kang'
>>> c
'ning'
#这个过程也被称作“元组解包”
>>> Myname =['Chang','kang','ning']
>>> tuple(Myname)
('Chang','kang','ning')
键(key)
,需要通过键来访问元素,键通常是字符串,但它还可以是Python中其他任意的不可变
类型:布尔型、浮点型、元组、字符串,以及其他一些相关类型。而字典本身是可变的,因此你可以增加、删除或修改其中的键值对
。键值对(key:value)
包裹起来即可进行字典的创建:>>> empty_dict ={}
>>> empty_dict
{}
>>> a_dict ={'Myname':'ChangKangning',
'Yourname':'XXX'}
>>> a_dict
{'Myname': 'ChangKangning', 'Yourname': 'XXX'}
#包含双值元组的列表
>>> example =[('C','Chang'),('K','Kang'),('N','Ning')]
>>> dict(example)
{'C': 'Chang', 'K': 'Kang', 'N': 'Ning'}
#另外其它包含双值列表的元组、双字符的字符串、双字符串组成的元组等都可以
# 转化为字典,在此不一一举例。
键值对
组成,而向字典中添加元素非常简单,只需要指定该元素的键并赋予相应的值即可。如果该键已经有值,其将被新值取代,如果没有此键,此键值对
将被加入字典。>>> name_dict ={'C':'Chang','K':'Kang'}
>>> name_dict
{'C':'Chang','K':'Kang'}
>>> name_dict['N']='Ning'
>>> name_dict
{'C': 'Chang', 'K': 'Kang', 'N': 'Ning'}
键值对
的键,因此我们需要知道,每个字典中包含的键必须保证互不相同。函数名称 | 作用 |
---|---|
update(other_dict) | 将other_dict中的键值对复制到原字典 |
del dict[‘key’] | 删除dict中key的元素(类似列表中的del) |
clear() | 将字典中的所有元素删除 |
’key‘ in dict | 判断key是否在字典中 |
keys() | 获取字典中的所有键 |
values() | 获取字典中的所有值 |
items() | 获取字典中的所有键值对 |
字典名字
和键
即可得到对应的值
:>>> name_dict ={'C':'Chang','K':'Kang','N':'Ning'}
>>> name_dict['C']
'Chang'
3.2.2
表中的in
判断此键是否存在。如下:
>>> name_dict ={'C':'Chang','K':'Kang'}
>>> name_dict.get('K','none')
'Kang'
>>> name_dict.get('N','none')
'none'
>>> empty_set =set()
>>> empty_set
set()
>>> a_set ={1,2,3,4,5}
>>> a_set
{1,2,3,4,5} #虽然此时返回的值看似有序,但一定注意集合是无序的!!!
这里没什么好解释的,直接上例子:
>>> set('ning')
{'i','n','g'}
#如上所示,两个n变成了一个
#将列表转换为集合
>>> set(['Chang','kang','ning'])
{'ning', 'Chang', 'kang'}
#将元组转换为集合
>>> set(('Chang','kang','ning'))
{'ning', 'Chang', 'kang'}
#当字典作为参数传入set()函数时,只有键会被使用:
>>> set({'C':'Chang','K':'Kang','N':'Ning'})
{'C','K','N'}
#我们先建立一个字典,字典里边的值为集合
>>> a_dict ={
'C':{'C','h','a','n','g'},
'K':{'K','a','n','g'},
'N':{'N','i','n','g'}
}
>>> for i,j in a_dict.items():
if 'a' in j:
print(i)
'C'
'K'
函数名称 | 作用 |
---|---|
intersection(set) | 获取原集合与set的交集 |
& | 同上 |
union(set) | 获取原集合与set的并集 |
| | 同上 |
difference(set) | 获取原集合与set的差集 |
- | 同上 |
symmetric_difference(set) | 获取原集合与set的异或 集(仅在两个集合中出现一次) |
^ | 同上 |
issubset(set) | 判断原集合是否为set的子集 |
<= | 同上 |
< | 判断真子集 |
issuperset(set) | 判断原集合是否为set的超集 |
>= | 同上 |
> | 判断真超集 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。