本文主要是介绍长风破浪正其时,Python天堑变通途(4)(列表:打了激素的数组),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.创建列表:
创建普通列表:
member = [1 , 2 , 3]
创建混合列表:
mix = [1 , 'sayaka' , 3.15 , [1,2,3]]
空列表:
empty = []
2.向列表里添加元素:
>>> member = ['美树沙耶香' , '鹿目圆']
>>> member.append('巴麻美')
>>> member
#可以把.理解为属于
['美树沙耶香', '鹿目圆', '巴麻美']
>>> len(member)
3
>>>
注意:extend 要添加列表元素:
>>> member.extend(['晓美焰','佐仓杏子'])
>>> member
['美树沙耶香', '鹿目圆', '巴麻美', '晓美焰', '佐仓杏子']
>>>
append() 方法是将参数作为一个元素增加到列表的末尾。extend() 方法则是将参数作为一个列表去扩展列表的末尾。
insert:
>>> member.insert(2,'QB')
>>> #顺序:从零开始,所以2应该插在第三位
>>> member
['美树沙耶香', '鹿目圆', 'QB', '巴麻美', '晓美焰', '佐仓杏子']
>>>
3.打印列表作业:
#member = ['美树沙耶香' , 13 , '佐仓杏子' , 24]
#for i in member:#print(i)
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]
count = 0
length = len(member)#length为10
while count < length:#意思是循环5次print(member[count], member[count+1])#print(member[0])即为打印列表中的第一个元素count += 2
4.列表中成员调换位置元素的(member[x]即为元素的索引值:
temp = member[0]
member[0] = member[1]
member[1] = member[0]
5.从列表中删除元素:
member.remove[x]
del member #删除member整个列表
member.pop(x) #是将一个元素从列表中提取出来,并返回一个值
name = member.pop(1) #将列表中的第二个元素拿出,并为name赋值
6.概念辨析:
语句(比如if,del):逻辑语句不需要括号
bif(比如print,range):是调用的函数,需要括号
7.列表分片:
>>> member = ['a','b','c','d','e']
>>> member[1:3] #: 即为到,语句表示member一到三(index),但是三不包含
['b', 'c'] #原列表没有任何改变
8.list1[0]返回第0个元素的值,list1[0:1]返回一个只含有第0个元素的列表
9.在进行分片的时候,我们知道分片的开始和结束位置需要进行指定,但其实还有另外一个隐藏的设置:步长。
list1 = [1,2,3,4,5,6]
#1)简洁分片操作:
list1[::2] == [1,3,5]
#2)步长不能为0,会报错SyntaxError: invalid syntax
#3) 步长可以是负数,改变方向(从尾部开始向左走)
list1[::-2] == [6, 4, 2]
10.要对一个列表进行顺序排序,请问使用什么方法?
list1 = [5,1,3,2,4]
list1.sort() #()内默认为reverse == Flase
print(list1)#升序
list1.sort(reverse = True)
print(list1)#降序
11.拷贝列表:
>>> list2 = list1.copy()
>>> list2
[1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
12.清空列表:(列表还在,只是变成空列表)
>>> list2.clear()
>>> list2
[]
13.列表推导式:
>>> [i*i for i in range(10)]
#[推导式 for 推导数(目标) in 范围]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
结构是由一对方括号所包含的以下内容:一个表达式,后面跟一个 for
子句,然后是零个或多个 for
或 if
子句。 其结果将是一个新列表,由对表达式依据后面的 for
和 if
子句的内容进行求值计算而得出。 举例来说,以下列表推导式会将两个列表中不相等的元素组合起来:
14.列表推导式作业:
>>> list1 = [(x,y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]
#如果x是偶数,则输出,如果y是奇数则输出
>>> list1 = []
#list1给了一个空列表,以append函数一个个往上循环添加
>>> for x in range(10):for y in range(10):if x%2 == 0:if y%2 != 0:list1.append((x,y))
>>> list1
[(0, 1), (0, 3), (0, 5), (0, 7), (0, 9), (2, 1), (2, 3), (2, 5), (2, 7), (2, 9), (4, 1), (4, 3), (4, 5), (4, 7), (4, 9), (6, 1), (6, 3), (6, 5), (6, 7), (6, 9), (8, 1), (8, 3), (8, 5), (8, 7), (8, 9)]
15.列表推导式作业2:(可以全部写在一行里,离大谱):
list1 = ['1.just do it','2.一切皆有可能','3.让编程改变世界','4.Impossible is Nothing']
list2 = ['4.阿迪达斯','2.李宁','3.鱼c工作室','1.耐克']
list3 = []
for slogan in list1:#每一个list1的元素(元素剥离)for name in list2:#每一个list2的元素if slogan[0] == name[0]:#如果每一个元素的第一个数字相等list3.append(name + ':' + slogan[2:])#slogan是从第三个字符开始算
print(list3)
16.列表中的逻辑操作符:
>>> list1 = [123,234]
>>> list2 = [234,345]
>>> list3 = list1 + list2
>>> list3
[123, 234, 234, 345]
>>> list1*3
[123, 234, 123, 234, 123, 234]
>>> list4 = [123,234,['a','b']]
>>> 'a' in list4[2][0]
True
17.列表中的常用bif(属于列表中的内置方法,需要加‘.’):
count():计算参数在列表中出现的次数
index():返回参数在列表中的位置:
list.index(参数,start,end)
reverse():整个翻转
sort():排序函数:默认为升序:
sort(func,key,reverse)#reverse默认为FALSE
18.辨析:
list1 = [2,1,3]
list2 = list1[:] #完全拷贝,根原列表变化无关
list3 = list1 #跟原列表一起变化
这篇关于长风破浪正其时,Python天堑变通途(4)(列表:打了激素的数组)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!