您的位置:首页 > 编程语言 > Python开发

《python编程:从入门到实践》读书笔记2---列表

2018-02-20 20:36 483 查看
python基本数据类型之列表:基本操作
1, list()+range()  

2,  增删改查, 
3,  切片,  复制  遍历  
4,  排序,   最大/小值,   求和
#创建列表,
names=[] #等价于: names=list()
names=list('a') # ['a']
names=list( ('a','b','c','d') )#元组转列表:['a',''b,'c','d']
names=["Bob","Alic","Frank"]

##########列表改查###########
p1=names[0] #首个元素     Bob
p2=names[1] #         Alic
p3=names[-1] #最后一个元素    Frank
p4=names[-2] #倒数第二个元素  Suzan

#遍历--列表,切片
li=[123,234,2,]
for i in li:
    print(i) #123,234,2

for i in li[1:]:
    print(i)  #234, 2
#################列表切片: 列表的一部分(截取,复制)
'''
>>> a=[0, 1, 8, 27, 64, 125, 216, 343, 512, 729]
>>> a[:3]         #前三名
[0, 1, 8]

>>> a[-3:]        #倒数三名
[343, 512, 729]

>>> a[3:7]      #中间某部分
[27, 64, 125, 216]

>>> b=a[:] #等价b=a[0:]#复制列表: 截取全部
>>> b
[0, 1, 8, 27, 64, 125, 216, 343, 512, 729]
>>> id(b)
3069849260
>>> id(a)
3069849228
''' 
##########列表增删###########
names.append("name1")          #插入末尾:['Bob', 'Alic','Frank','name1']
names.insert(0,"name_insert_0")#插入指定位置: ['name_insert_0', 'Bob', 'Alic', 'Frank', 'name1']
names.pop()#  删除最后一个 【返回值】 ['name_insert_0', 'Bob', 'Alic', 'Frank']
names.pop(0)# 删除指定下标的:【返回值】['Bob', 'Alic', 'Frank']
del  names[0]#删除指定下标的 [Alic', 'Frank']
names.remove("Alic") #删除某个值 ['Frank']
################数字列表  ,函数: min(list), max(list), sum(list)
'''
a=[i for i in range(10)]#列表解析  #引申:b=[i**3 for i in range(100)]求100以内的数字的3次方
#等价于: a=list(i  for i  in range(10))
#等价于: a=list(range(10))
#等价于: a=list(range(0,10,1))  步长=1

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> a=list(range(1,50,2)) #步长=2
>>> a
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49]
>>> a=list(range(0,50,2))
>>> a
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48]

>>> a=[i for i in range(3,10)]
>>> a
[3, 4, 5, 6, 7, 8, 9]
>>> a=[i**3 for i in range(10)]
>>> a
[0, 1, 8, 27, 64, 125, 216, 343, 512, 729]
'''
##############列表排序   永久性sort()   按字母升序---->降序
'''
>>> names=['a','b','e','z','c','d']
>>> names.sort()
>>> names
['a', 'b', 'c', 'd', 'e', 'z']
>>> names.reverse()
>>> names
['z', 'e', 'd', 'c', 'b', 'a']
'''

###############列表排序   按字母降序
'''
>>> names=['a','b','e','z','c','d']
>>> names.sort(reverse=True)
>>> names
['z', 'e', 'd', 'c', 'b', 'a']
'''

###############列表排序   临时性sorted(names)   按字母升序
'''
>>> names=['b','e','z','c','d']
>>> n=sorted(names)
>>> n
[ 'b', 'c', 'd', 'e', 'z']
>>> names
['b', 'e', 'z', 'c', 'd']
'''
#############################初步练习:  邀请名单,    改动
names=['阿三','阿四','阿五','阿六']

#阿四不能来: names.remove("阿四")
#阿三临时有事,让他儿子出席  name.[name.index("阿三")]="阿三_son"

#第二个位子在过道中不能用,  客人要调换到第n个空闲的位置
length=names.__len__() #等价于:len(names)
if n<=length-1:
person=names.pop(1)
names
=person

#晚会结束,需要清空列表,验证是否清空
names.clear()
if names==[]:
print("已清空列表")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: