Python列表之创建列表的三种方式

在Python中有四种集合数据类型,分别是列表、元组、集合、字典:

  • 列表:有序,可变序列,允许有重复的元素。
  • 元组:有序,不可变序列,允许有重复的元素。
  • 集合:无序,无索引,无重复的成员。
  • 字典:无序,有索引,可变序列,无重复的成员。

何为可变序列和不可变序列

可变序列:可以进行增、删、改操作,并且执行完增删改操作后,对象的地址不会发生更改(即内存中的数据可以被修改)。如列表、字典、集合。

不可变序列:没有增、删、改操作,即内存中的数据不允许被修改。如数字类型(int、bool、float、complex)、字符串、元组。

这里先说说列表及创建列表的三种方式。

列表

python中没有数组类型,列表就相当于其他语言中的数组。可以存储N多个不同数据类型的元素。

变量存储的是一个对象的引用,而列表存储的是多个对象的引用。

a = 10  # 存储的是一个对象的引用

lst = ['hello','python',10]

print(id(lst))  # 1835963119872
print(type(lst))    # <class 'list'>
print(lst)      # ['hello', 'python', 10]

print(id(lst[0]),type(lst[0]),lst[0])   # 1835963075440 <class 'str'> hello
print(id(lst[1]),type(lst[1]),lst[1])   # 1835963075248 <class 'str'> python
print(id(lst[2]),type(lst[2]),lst[2])   # 1835961745936 <class 'int'> 10
图片[1]-Python列表之创建列表的三种方式-尤尤'blog
lst对象的内存示意图

列表的特点

元素有序排序;索引映射唯一数据;列表元素可以重复;可以多种类型的数据混存;根据需要动态分配和回收内存。

创建列表对象的三种方式

1)使用[],元素之间用英文版的逗号隔开。

语法格式:列表对象名 = [元素,元素,……]

代码演示:

#列表对象名  赋值号  [元素,元素,……]
lst = ['hello','python',10]

2)内置函数list()

lst1 = list(['hello','python',10])  # lst1实际上存储的是对象的引用
print(lst1,type(lst1))

lst2 = list(('hello','python',10))
print(lst2,type(lst2))

lst3 = list({'hello', 'python', 10})
print(lst3,type(lst3))
图片[2]-Python列表之创建列表的三种方式-尤尤'blog

3)列表生成式

列表中元素有规则的才可以使用列表生成式。

语法格式:

图片[3]-Python列表之创建列表的三种方式-尤尤'blog

注意:表示列表元素的表达式中一般包含自定义变量。

代码演示:

lst = [i for i in range(2,11,2)]
print(lst)  # [2, 4, 6, 8, 10]

lst = [i+1 for i in range(0,9,2)]
print(lst)  # [1, 3, 5, 7, 9]
图片[4]-Python列表之创建列表的三种方式-尤尤'blog

创建空列表的两种方式

1)使用[]

lst = []
print(lst,type(lst))    # [] <class 'list'>
图片[5]-Python列表之创建列表的三种方式-尤尤'blog

2)使用内置函数 list()

lst = list()
print(lst,type(lst))    # [] <class 'list'>
图片[6]-Python列表之创建列表的三种方式-尤尤'blog
© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容