python的基本类型
一、List(列表)类型
List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标:尾下标]
索引值以 0 为开始值,-1 为从末尾的开始位置。
t = ['a','b','c','d','e']
>>>t = [1:3]
>>>['b','c']
>>>t = [:4]
>>>['a','b','c','d']
>>>t = [3:]
>>>['d','e']
>>>t = [ : ]
>>>['a','b','c','d','e']
加号 + 是列表连接运算符,星号 * 是重复操作。如下实例:
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
tinylist = [123, 'runoob']
print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (tinylist * 2) # 输出两次列表
print (list + tinylist) # 连接列表
以上实例输出结果:
['abcd', 786, 2.23, 'runoob', 70.2]
abcd
[786, 2.23]
[2.23, 'runoob', 70.2]
[123, 'runoob', 123, 'runoob']
['abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob']
与字符串类型不一样的是,列表中的元素是可以改变的如下图:
>>>a = [1, 2, 3, 4, 5, 6]
>>> a[0] = 9
>>> a[2:5] = [13, 14, 15]
>>> a
[9, 2, 13, 14, 15, 6]
>>> a[2:5] = [] # 将对应的元素值设置为 []
>>> a
[9, 2, 6]
删除列表元素
可以使用 del 语句来删除列表的的元素,如下图:
list = ['Google', 'Runoob', 1997, 2000]
print ("原列表 : ", list)
del list[2]
print ("删除第三个元素 : ", list)
上图输出结果:
原列表 : ['Google', 'Runoob', 1997, 2000]
删除第三个元素 : ['Google', 'Runoob', 2000]
嵌套列表
使用嵌套列表即在列表里创建其它列表,例如:
>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'
Python列表函数&方法
列表常用函数如下图:
[len(list)]#返回列表元素的个数
len()方法语法:len(list)
[max(list)]#返回列表元素的最大值
max()方法语法:max(list)
[min(list)]#返回列表元素的最小值
min()方法语法:min(list)
[list(seq)]#将元组转换为列表
list()方法语法:list( seq )
用以上函数操纵列表如下图:
list1 = ['Google', 'Runoob', 'Taobao']
print (len(list1))
list2=list(range(5)) # 创建一个 0-4 的列表
print (len(list2))
list1, list2 = ['Google', 'Runoob', 'Taobao'], [456, 700, 200]
print ("list1 最大元素值 : ", max(list1))
print ("list2 最大元素值 : ", max(list2))
list1, list2 = ['Google', 'Runoob', 'Taobao'], [456, 700, 200]
print ("list1 最小元素值 : ", min(list1))
print ("list2 最小元素值 : ", min(list2))
aTuple = (123, 'Google', 'Runoob', 'Taobao')
list1 = list(aTuple)
print ("列表元素 : ", list1)
str="Hello World"
list2=list(str)
print ("列表元素 : ", list2)
输出结果如下图:
3
5
list1 最大元素值 : Taobao
list2 最大元素值 : 700
list1 最小元素值 : Google
list2 最小元素值 : 200
列表元素 : [123, 'Google', 'Runoob', 'Taobao']
列表元素 : ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
列表常用方法如下图:
append() 方法用于在列表末尾添加新的对象
append()方法语法:list.append(obj)
count() 方法用于统计某个元素在列表中出现的次数
count()方法语法:list.count(obj)
extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
extend()方法语法:list.extend(seq)
index() 函数用于从列表中找出某个值第一个匹配项的索引位置
index()方法语法:list.index(obj)
insert() 函数用于将指定对象插入列表的指定位置
insert()方法语法:list.insert(index, obj)
pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
pop()方法语法:list.pop([index=-1])
remove() 函数用于移除列表中某个值的第一个匹配项
remove()方法语法:list.remove(obj)
reverse() 函数用于反向列表中元素
reverse()方法语法:list.reverse()
sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
sort()方法语法:list.sort( key=None, reverse=False)
clear() 函数用于清空列表,类似于 del a[:]
clear()方法语法:list.clear()
copy() 函数用于复制列表,类似于 a[:]
copy()方法语法:list.copy()
用以上方法对列表进行操作如下图:
list1 = ['Google', 'Runoob', 'Taobao']
list1.append('Baidu')
print ("更新后的列表 : ", list1)
aList = [123, 'Google', 'Runoob', 'Taobao', 123];
print ("123 元素个数 : ", aList.count(123))
print ("Runoob 元素个数 : ", aList.count('Runoob'))
list1 = ['Google', 'Runoob', 'Taobao']
list2=list(range(5)) # 创建 0-4 的列表
list1.extend(list2) # 扩展列表
print ("扩展后的列表:", list1)
list1 = ['Google', 'Runoob', 'Taobao']
print ('Runoob 索引值为', list1.index('Runoob'))
print ('Taobao 索引值为', list1.index('Taobao'))
list1 = ['Google', 'Runoob', 'Taobao']
list1.insert(1, 'Baidu')
print ('列表插入元素后为 : ', list1)
list1 = ['Google', 'Runoob', 'Taobao']
list1.pop()
print ("列表现在为 : ", list1)
list1.pop(1)
print ("列表现在为 : ", list1)
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu']
list1.remove('Taobao')
print ("列表现在为 : ", list1)
list1.remove('Baidu')
print ("列表现在为 : ", list1)
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu']
list1.reverse()
print ("列表反转后: ", list1)
aList = ['Google', 'Runoob', 'Taobao', 'Facebook']
aList.sort()
print ( "List : ", aList)
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu']
list1.clear()
print ("列表清空后 : ", list1)
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu']
list2 = list1.copy()
print ("list2 列表: ", list2)
输出结果如下图:
更新后的列表 : ['Google', 'Runoob', 'Taobao', 'Baidu']
123 元素个数 : 2
Runoob 元素个数 : 1
扩展后的列表: ['Google', 'Runoob', 'Taobao', 0, 1, 2, 3, 4]
Runoob 索引值为 1
Taobao 索引值为 2
列表插入元素后为 : ['Google', 'Baidu', 'Runoob', 'Taobao']
列表现在为 : ['Google', 'Runoob']
列表现在为 : ['Google']
列表现在为 : ['Google', 'Runoob', 'Baidu']
列表现在为 : ['Google', 'Runoob']
列表反转后: ['Baidu', 'Taobao', 'Runoob', 'Google']
List : ['Facebook', 'Google', 'Runoob', 'Taobao']
列表清空后 : []
list2 列表: ['Google', 'Runoob', 'Taobao', 'Baidu']