Python 列表List

ChatGPT 3.5 国内中文镜像站免费使用啦

零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门

一.Python 列表List简介

       除了前面介绍的 Python变量:整数 / 浮点数 / bool 值 ,列表是 Python 开发过程中最常用的数据类型之一,列表俗称:list ,特点如下:

  • 1.列表由一个或者多个数据构成,数据的类型可以不相同也可以相同;
  • 2.列表中的数据需要写在[]中括号内部,数据与数据之间用逗号隔开;
  • 3.列表是一个有序的集合,下标索引默认重 0 开始,和字符串类似;
图片[1]-Python 列表List-猿说编程

具体代码示例如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""


list1 = list() #定义一个空列表
print("list1 :",list1)
list2 = [1,2,3,4]           #定义一个整数类型的列表赋值给list2
print("list2 : %s" % list2)
list3 = ["a","b","c"]       #定义一个字符串类型的列表赋值给list3
print("list3 : {}" .format(list3))
list4 = [0,"hello",True]    #定义一个不同数据类型的列表赋值给list4
print("list4 : {0}" .format(list4))

'''
输出结果:
list1 : []
list2 : [1, 2, 3, 4]
list3 : ['a', 'b', 'c']
list4 : [0, 'hello', True]

'''
图片[2]-Python 列表List-猿说编程

二.Python 列表List增加数据

       一般可以使用 append 函数来为列表 list 添加数据,默认将数据追加在末尾。示例代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

list1 = list() #定义一个空列表
print("list1 : ",list1)
list1.append("hello") # 在列表list的末尾添加字符串 'hello'
list1.append(True)    # 在列表list的末尾添加布尔值 True
print("list1 : ",list1)

'''
输出结果:

list1 :  []
list1 :  ['hello', True]

'''

三.Python 列表List删除数据

       列表中的数据从左到右,索引值默认重 0 开始以此递增,和字符串的索引值类似,删除使用 del 关键字,直接列表 List 时根据数据对应的索引值直接删除即可,代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

list2 = [1,2,3,4,5,6,7,False,"python"]
print("删除数据之前:{}".format(list2))
del list2[0]  # 删除列表中的(索引值等于0)第一个数据,此时list2 中数据为[2,3,4,5,6,7,False,"python"]
print("第一次数据之后:{}".format(list2))
del list2[0]  # 基于上一次的结果,删除(索引值等于0)第一个数据,此时list2 中数据为[3,4,5,6,7,False,"python"]
print("第二次数据之后:{}".format(list2))
del list2[3]  # 基于上一次的结果,删除(索引值等于3)第四个数据,此时list2 中数据为[3,4,5,7,False,"python"]
print("第三次数据之后:{}".format(list2))


'''
输出结果:

删除数据之前:[1, 2, 3, 4, 5, 6, 7, False, 'python']
第一次数据之后:[2, 3, 4, 5, 6, 7, False, 'python']
第二次数据之后:[3, 4, 5, 6, 7, False, 'python']
第三次数据之后:[3, 4, 5, 7, False, 'python']


'''

四.Python 列表List修改数据

       直接根据索引值找到列表中对应的数据,然后赋值即可。示例代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

list2 = [1,2,3,4,5,6,7,False,"python"]
print("修改数据之前:{}".format(list2))
list2[2] = False   # 修改列表索引值为2的数据(即列表中的第三个数据),直接赋值为bool变量 False
print("第一次修改数据之后:{}".format(list2))
list2[0] = "python"  # 修改列表索引值为0的数据(即列表中的第第一个数据),直接赋值为bool变量 False
print("第二次修改数据之后:{}".format(list2))



'''
输出结果:

修改数据之前:[1, 2, 3, 4, 5, 6, 7, False, 'python']
第一次修改数据之后:[1, 2, False, 4, 5, 6, 7, False, 'python']
第二次修改数据之后:['python', 2, False, 4, 5, 6, 7, False, 'python']

'''

五.Python 列表List查找数据

       直接根据索引值找到列表中对应的数据即可。示例代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""


list2 = [1,2,3,4,5,6,7,False,"python"]
print(list2[0])                 # 输出列表中索引值为0的数据,即第一个元素
print(list2[5])                 # 输出列表中索引值为5的数据,即第六个元素
print(len(list2))               # 获取列表中数据个数

# 获取列表的最后一个元素,注意要 len(list2) - 1,因为最后一个元素的索引值为8
print("list2中最后一个数据是:",list2[len(list2)-1])

print("***"*20) #小窍门:直接输出60个*
# 遍历列表
print("遍历列表方式一:")
for i in  list2:
    print(i)


print("***"*20) #小窍门:直接输出60个*
print("遍历列表方式二:")
for i in range(len(list2)):
    # 内置函数 type()获取数据类型
    print("list2列表中索引值{}对应的数据是{},数据类型是:{}".format(i,list2[i],type(list2[i])))


'''
输出结果:

1
6
9
list2中最后一个数据是: python
************************************************************
遍历列表方式一:
1
2
3
4
5
6
7
False
python
************************************************************
遍历列表方式二:
list2列表中索引值0对应的数据是1,数据类型是:<class 'int'>
list2列表中索引值1对应的数据是2,数据类型是:<class 'int'>
list2列表中索引值2对应的数据是3,数据类型是:<class 'int'>
list2列表中索引值3对应的数据是4,数据类型是:<class 'int'>
list2列表中索引值4对应的数据是5,数据类型是:<class 'int'>
list2列表中索引值5对应的数据是6,数据类型是:<class 'int'>
list2列表中索引值6对应的数据是7,数据类型是:<class 'int'>
list2列表中索引值7对应的数据是False,数据类型是:<class 'bool'>
list2列表中索引值8对应的数据是python,数据类型是:<class 'str'>

'''

顺便回忆一下内置函数 type 的使用,注意上面代码中两种循环方式的区别:

  • 第一种循环是直接根据列表 list 中的数据通过偏移依次遍历;
  • 第二种是通过列表 list 的索引值遍历循环,类似查找操作;


六.Python 列表List截取

       列表 List 截取和字符串的操作类似,直接根据 List 下标索引值操作即可,演示代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

list1 = ["猿",True,"python",5.5,"hello",20,"list","study"]
print("list1:",list1)

# 截取在列表中索引值为2-4的数据,注意截取并不包括4
list2 = list1[2:4]
print("list2:",list2)

# 截取在列表中索引值为1-5的数据,注意截取并不包括5
list3 = list1[1:5]
print("list3:",list3)

# 截取在列表中索引值为0-4的数据,冒号前面不设置参数,默认重0开始,注意截取并不包括4
list4 = list1[:4]
print("list4:",list4)

# 截取在列表中索引值为2-末尾的数据,冒号后面不设置参数,默认截取到最后一位数据,注意截取包括最后一位
list5 = list1[2:]
print("list5:",list5)



'''
输出结果:

list1: ['猿', True, 'python', 5.5, 'hello', 20, 'list', 'study']
list2: ['python', 5.5]
list3: [True, 'python', 5.5, 'hello']
list4: ['猿', True, 'python', 5.5]
list5: ['python', 5.5, 'hello', 20, 'list', 'study']


'''

七.Python 列表List排序

       可以通过使用 sort 函数或者 reverse 函数对列表 list 排序,演示代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

# 对数字排序
list1 = [10,2,30,4,5,6,7] #定义一个空列表
print("排序之前:",list1)
list1.sort()  # 默认重小到大依次排序
print("排序之后:%s" % list1)
list1.reverse() # 默认重大到小依次排序
print("排序之后:{}".format(list1))

print("***"*20) # 小窍门:直接打印60个*
#对字符串排序
list2 = ["f","e","c","a"]
print("排序之前:",list2)
list2.sort()  # 默认重小到大依次排序
print("排序之后:%s" % list2)
list2.reverse() # 默认重大到小依次排序
print("排序之后:{}".format(list2))


'''
输出结果:

排序之前: [10, 2, 30, 4, 5, 6, 7]
排序之后:[2, 4, 5, 6, 7, 10, 30]
排序之后:[30, 10, 7, 6, 5, 4, 2]
************************************************************
排序之前: ['f', 'e', 'c', 'a']
排序之后:['a', 'c', 'e', 'f']
排序之后:['f', 'e', 'c', 'a']

'''

八.Python 列表List与字符串str的相互转换

1.str 字符串转列表 list

       使用 list(str),强制将 str 字符串转为 list 列表,演示代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

str1 = "hello world"
list1 = list(str1)  # 强制将str1 字符串转为列表 list
print("str1:{},数据类型:{}".format(str1,type(str1)))
print("list1:{},数据类型:{}".format(list1,type(list1)))
'''
输出结果:

str1:hello world,数据类型:<class 'str'>
list1:['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'],数据类型:<class 'list'>

'''

2.list 列表转字符串 str

       使用 join 函数将列表直接转为字符串,演示代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:python列表list.py
@Time:2021/3/22 00:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""


list2 = ["猿说python",'-',"python教程"]
str2 = "".join(list2)
print("list2:{},数据类型:{}".format(list2,type(list2)))
print("str2:{},数据类型:{}".format(str2,type(str2)))

'''
输出结果:

list2:['猿说python', '-', 'python教程'],数据类型:<class 'list'>
str2:猿说python-python教程,数据类型:<class 'str'>


'''

九.重点总结

       1.对于列表的增删改查是 Python 开发中经常使用的内容,需要全部掌握.

       2.注意列表 List 与字符串 str 的写法区别:

a = "hello world"    # 字符串
b = ["hello world"]  # 列表,列表中只有一个字符串数据

十.猜你喜欢

  1. Python 简介
  2. Python Pycharm Anacanda 区别
  3. Python2.x 和 Python3.x,如何选择?
  4. Python 配置环境
  5. Python Hello World入门
  6. Python 代码注释
  7. Python 中文编码
  8. Anaconda是什么?Anconda下载安装教程
  9. Pycharm 提示:this license **** has been cancelled
  10. Pycharm设置开发模板/字体大小/背景颜色

ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
THE END
喜欢就支持一下吧
点赞3 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容