“从零开始,一点一滴地分享所有我学到的Python知识。”
list的语法是 list (Tup),其中, Tup是你需要转换为列表的元组。
比如:
Tup = (1,2,3,"Zara","Nike")
Mylist = list(Tup)
print(Mylist)
这样,你就得到了输出结果 :
[1, 2, 3, 'Zara', 'Nike']
可是这样太麻烦了,明明可以一步出结果的。所以我们可以直接写为:
Mylistis = [1,2,3,4,5,6]
Mylistisnot = ["Adidas","Puma","UA"]
print(Mylistis)
print(Mylistisnot)
这样,你就得到了输出的结果,分别是:
[1, 2, 3, 4, 5, 6]
['Adidas', 'Puma', 'UA']
通过上例,我们可以看到:list中的元素可以是纯数字组合,可以是纯字符串组合,也可以二者兼有。
需要注意的是,list中的排在第一个位置元素是默认缺省值,也就是说它是第0个元素。举例来说,如果我写一个list为a=[1,2,-7,9,11],则其中的-7是第2个元素;11是第4个元素;数字1排在第一位,它是第0个元素。
下面我写这样一段代码:
a=[1,2,-7,9,11]
print(a)
a[1]="hahaha"
print(a)
OK! 输出的结果是:
[1, 2, -7, 9, 11]
[1, 'hahaha', -7, 9, 11]
也就是说,a[1]="hahaha"这个命令把a中的第1个元素“2”换成了“hahaha”
Plus!
如果我们写a=[1,2,3,4,5],b=a这样的代码,这样往往会造成混淆或错误。因为上述代码表达的是 a与b 均指向一个[1,2,3,4,5]这样的list实体。在这样的情况下,任何对b的修改都会构成对a的修改,反之亦然。
如果想生成一个b,让其成为a的copy,且不指向同一个实体,则应输入:
b=a[:]
这样的话,我们分别生成了a和b,虽然两个list包含的元素相同,但是二者互相独立,对a的修改不会造成b的修改,反之亦然。
注:冒号“:”表示所有元素。
在上述命令的基础上输入如下命令:
c=a[1:3]
print(b)
print(c)
会输出:
[1, 'hahaha', -7, 9, 11]
['hahaha', -7]
所以c=a[1:3]中,“1”代表从第1个元素开始(而不是第0个元素开始),“3”代表从第0个元素开始数,到第3个元素截止。
本文完整命令:
Tup = (1,2,3,"Zara","Nike")
Mylist = list(Tup)
print(Mylist)
Mylistis = [1,2,3,4,5,6]
Mylistisnot = ["Adidas","Puma","UA"]
print(Mylistis)
print(Mylistisnot)
a=[1,2,-7,9,11]
print(a)
a[1]="hahaha"
print(a)
b=a[:]
c=a[1:3]
print(b)
print(c)
如上命令的输出结果为:
[1, 2, 3, 'Zara', 'Nike']
[1, 2, 3, 4, 5, 6]
['Adidas', 'Puma', 'UA']
[1, 2, -7, 9, 11]
[1, 'hahaha', -7, 9, 11]
[1, 'hahaha', -7, 9, 11]
['hahaha', -7]