Python列表List基础知识点总结

Python列表List基础知识点总结

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time  : 2020/4/16 21:38
# @Author: xuhui
# @File  : List.py

print()
print("`````aaaaaaaaa`````")
print()

# 创建一个列表list1;初始其中有三个元素,分别为:"R1", "0.0.0.0", 11
print("```(1)```")
# 元素从左到右序号为:0,1,2;从右到左序号为:-1,-2,-3
list1 = ["R1", "1.1.1.1", 11]
# 取出list1中的第一个元素
print(list1[0])
# 取出list1中的倒数第一个元素
print(list1[-1])
# !!!分片方法一
print("```(2)```")
# 取出list1中的第二个和第三个元素
#   方法一:正向序号取数据,取序号为1和序号为2的数据
#          !注意:list1[x:y]代表取x到y的前一个数据
#                 即list1[x:y]可认为在数学上的值域为[x,y)(左闭右开,左边能取到,右边取不到)
print(list1[1:3])
#   方法二:反向序号取数据,取序号为-2和序号为-1的数据
#          !注意:由于-1为最后一个数据,若采用list1[-2:-1],只能取到序号为-2的值而取不到序号为-1的值(因为左闭右开规则)
#                 故采用list1[-2:]
#                 list1[x:],":"后面什么都不写,代表从序号为x一直往后取数据,直到把列表数据都取完
print(list1[-2:])
# !可通过分片方法重新构建一个新的列表
print("```(3)```")
list2 = list1[-2:]
print(list2)

print()
print("`````bbbbbbbbb`````")
print()

# 可通过列表的append()函数向列表!!尾部!!添加元素
print("```(1)```")
print(list1)
list1.append("R2")
list1.append("2.2.2.2")
list1.append(22)
list1.append("R3")
list1.append("3.3.3.3")
list1.append(33)
print(list1)
# !!!分片方法二
print("```(2)```")
# list1[x:y:z]
# 若 x&&y&&z>0(即x、y、z为正数),表示从序号为x的元素开始,每往后数,数到第z个,就取下来,直到数到序号y(y不可取)
print(list1[1:5:1])
# 若 x&&y&&z<0(即x、y、z为负数),表示从序号为x的元素开始,每往前数,数到第|z|个,就取下来,直到数到序号y(y不可取)
print(list1[-2:-3:-1])
# list1[:y:z]
# 若 y&&z>0(即y、z为正数),表示从序号为0的元素开始,每往后数,数到第z个,就取下来,直到数到序号y(y不可取)
print(list1[:5:1])
# 若 y&&z<0(即y、z为负数),表示从序号为-1的元素开始,每往前数,数到第|z|个,就取下来,直到数到序号y(y不可取)
print(list1[:-3:-1])
# list1[::z]
# 若 z>0(即z为正数),表示从序号为0的元素开始,每往后数,数到第z个,就取下来,直到数到列表结尾(结尾不可取)
print(list1[::1])
# 若 z<0(即z为负数),表示从序号为-1的元素开始,每往前数,数到第|z|个,就取下来,直到数到列表开头(开头不可取)
print(list1[::-1])

print()
print("`````ccccccccc`````")
print()

# 列表倒序输出
#    方法一:通过列表分片,不改变实际列表中元素的顺序
print("```(1)```")
print(list1[::-1])
#    方法二:列表的reverse()函数,该方法改变实际列表中元素的顺序
print("```(2)```")
list1.reverse()
print(list1)
list1.reverse()
#    方法三:通过getattr()()方法(经过函数柯里化?),该方法改变实际列表中元素的顺序
print("```(3)```")
getattr(list1, "reverse")()
print(list1)
getattr(list1, "reverse")()

print()
print("`````ddddddddd`````")
print()

# 通过列表的insert(x,"yy")函数可向指定位置x处插入元素"yy"(可以是列表中可插入的任意元素)
print("```(1)```")
list1.insert(0, "info")
print(list1)
# 通过列表的pop(index)函数可将列表中序号为index的元素抛出,并可以返回该元素的值(小括号中不加参数,默认抛出最后一个)
print("```(2)```")
info = list1.pop(0)
print(info)
print(list1)
info = list1.pop()
print(info)
print(list1)
# 通过列表的pop(x)函数可将列表序号为x的元素抛出,并可以得到该元素的值(即该函数拥有返回值)
print("```(3)```")
info = list1.pop(0)
print(info)
print(list1)
# 可以通过直接给列表中元素赋值的方法改变列表中元素的值
print("```(4)```")
list1[3] = 22
print(list1)
# 当你确定你要移除列表中的什么元素时,可以使用列表的remove()函数
# !注意:该函数没有返回值,只会删掉列表中从前往后数的第一个匹配项
print("```(5)```")
list1.remove(22)
print(list1)

print()
print("`````eeeeeeeee`````")
print()

# 列表的加法,list_z = list_x + list_y得到的list_z为list_x与list_y两个列表的合并,list_x在前,list_y在后
print("```(1)```")
list2 = [1, 2, 3, 4, 5]
list3 = list1 + list2
list4 = list2 + list1
print(list1)
print(list2)
print(list3)
print(list4)
# 可通过列表的extend(list_x)函数,将list_x拼接到调用该函数的列表的后面
print("```(2)```")
list1.extend(list2)
print(list1)
# 若使用列表的append(list_x)函数插入列表list_x
# 该函数会将list_x这个列表整个当做一个元素插入到列表最后面,而不是做列表的拼接
print("```(3)```")
list1.append(list2)
print(list1)

print()
print("`````fffffffff`````")
print()

# 列表的乘法,list_y = list_x * n,即list_y为n个list_x相拼接
print(list2)
list5 = list2 * 3
print(list5)

发布了7 篇原创文章 · 获赞 4 · 访问量 174

猜你喜欢

转载自blog.csdn.net/weimofanchen/article/details/105597299