码迷,mamicode.com
首页 > 编程语言 > 详细

4.5Python数据类型(5)之列表类型

时间:2018-12-26 12:53:29      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:交流   list   快速   href   names   end   range   默认   var   

返回总目录

目录:

1.列表的定义

2.列表的常规操作

3.列表的额外操作

(一)列表的定义:

列表的定义 [var1, var2, ……, var n ]

# (1)列表的定义 [var1, var2, ……, var n ]
items = ["a", 456, False]
name = ["zhangsan", 123, "李四", True, items]
print(name, type(name))

--------------输出------------------
['zhangsan', 123, '李四', True, ['a', 456, False]] <class 'list'>

(2)快速生成式:

# range列表快速生成
# 语法 range(stop) [0, 1, 2 ... , stop - 1]
#      range(start, stop[, step])
#      [start, start + step, start + 2*step ... <stop]
#      step默认值是1
num = range(99)
print(num)
num2 = range(1, 99)
print(num2)

# 列表式推导式生成
# 语法 [表达式 for 变量 in 列表]
#     [表达式 for 变量 in 列表 if 条件]

# 原始方法:
num3 = [1, 2, 3, 4, 5]
result_list = []
for i in num3:
    if i % 2 != 0:
        result = i**2
        result_list.append(result)
print(result_list)

# 推导式:
result_list2 = [j**2 for j in num3]
print(result_list2)
# 条件推导式:
result_list3 = [j**2 for j in num3 if j % 2 != 0]
print(result_list3)
-----------------输出---------------------------
range(0, 99)
range(1, 99)
[1, 9, 25]
[1, 4, 9, 16, 25]
[1, 9, 25]

(二)列表的常规操作:

(1)增加元素:

# 增list
# append 往列表中, 追加一个新的元素 在列表的最后
#   语法 l.append(object)
#   参数 object 想要添加的元素
list1 = [1, 2, 3, 4]
result1 = list1.append(5)
print("追加元素5后:", list1)

# insert 往列表中, 追加一个新的元素 在指定索引前面
#   语法 l.insert(index, object)
#   参数 index 索引, 到时会插入到这个索引之前
#       object 想要添加的元素
list2 = ["a", "b", "c"]
list2.insert(1, "x")
print("插入'x'后的结果:", list2)

# extend 往列表中, 扩展另外一个可迭代序列
#   语法 l.extend(iterable)
#   参数 iterable 可迭代集合 字符串 列表 元组 ...
list3 = [1, 2, 3, 4]
list3.extend(list2)
print("拼接列表后:", list3)

# 乘法运算 ["a"] * 3 = ['a', 'a', 'a']
list4 = ["a", "b"]
print("列表翻倍后:", list4*2)

# 加法运算 ["a"] + ["b", "c"] = ["a", "b", "c"]
list5 = ["a"]
list6 = ["b", "c"]
print("列表相加后:", list5 + list6)

------------------输出----------------------
追加元素5后: [1, 2, 3, 4, 5]
插入'x'后的结果: ['a', 'x', 'b', 'c']
拼接列表后: [1, 2, 3, 4, 'a', 'x', 'b', 'c']
列表翻倍后: ['a', 'b', 'a', 'b']
列表相加后: ['a', 'b', 'c']

(1)删除元素:

# 删list
# del 可以删除一个指定元素(对象)
#   语法 del 指定元素 可以删除整个列表 删除一个变量 也可以删除某个元素
list1 = [1, 2, 3, 4, 5]
del list1[1]
print("删除第2个元素以后:", list1)

# pop 移除并返回列表中指定索引对应元素
#   语法 l.pop(index=-1)
#   参数 index 需要被删除返回的元素索引 默认是-1 也就对应着列表最后一个元素
list2 = ["a", "b", "c"]
print("删除的元素是:", list2.pop(1), "原列表改为:", list2)

# remove 移除列表中指定元素
#   语法 l.remove(object)
#   参数 object 需要被删除的元素
list3 = ["a", "b", "c"]
list3.remove("b")
print("原列表改为:", list3)

------------------输出----------------------
删除第2个元素以后: [1, 3, 4, 5]
删除的元素是: b 原列表改为: ['a', 'c']
原列表改为: ['a', 'c']

(1)改变元素:

# 改list
# names[index] = 666
list1 = [1, 2, 3, 4]
list1[1] = 0
print(list1)

------------------输出----------------------
[1, 0, 3, 4]

(1)查看元素:

# 查list
# 获取单个元素 items[index] 注意负索引
list1 = [1, 2, 3, 4]
print("第2个元素是:", list1[1])
print("-1元素:", list1[-1])

# 获取元素索引 index()
list2 = ["a", "b", "c"]
print("字符'b'所在的索引:", list2.index("b"))

# 获取指定元素个数 count()
list3 = [1, "b", 1, 1, 2, 3, 4]
print("list3的元素1的个数是:", list3.count(1))

# 获取多个元素 切片 items[start:end:step]
list4 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print("切取一部分的元素:", list4[1:8:2])

# 遍历
# 方式1 根据元素进行遍历
#   for item in list:
#       print(item)
list5 = [1, 2, 3, 4, 5]
for i in list5:
    print("第", i, "元素", end="")

print("\n")
# 方式2 根据索引进行遍历
#   for index in range(len(list)):
#       print(index, list[index])
list6 = ["a", "b", "c", "d", "e"]
for j in range(len(list6)):
    print("第", list6[j], "元素", end="")
------------------输出----------------------
第2个元素是: 2
-1元素: 4
字符'b'所在的索引: 1
list3的元素1的个数是: 3
切取一部分的元素: [2, 4, 6, 8]
第 1 元素第 2 元素第 3 元素第 4 元素第 5 元素

第 a 元素第 b 元素第 c 元素第 d 元素第 e 元素

(三)列表的额外操作

本小节结束!

返回总目录

我是张一根,一个机械专业的大学生,一个在读本科的计算机爱好者,期盼和你一起交流计算机的知识,让我们在这个大时代里一起进步。

4.5Python数据类型(5)之列表类型

标签:交流   list   快速   href   names   end   range   默认   var   

原文地址:https://www.cnblogs.com/zyg123/p/10178479.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!