Python基础_列表

# @Time:2020/12/13 0:07
# @Author:李 祥
# @File:List.py
# @Software:PyCharm

# 列表、元组、字典、集合,哦都是常用的容器类型
# 容器类型,就是用来在内存中保存数据的。

# 1.列表的创建与元素的访问

# 方法一:直接赋值
namelist = []  # 定义一个空的列表
print(type(namelist))

namelist = ["11", "11", 11, True, "aa"]  # 存放多种数据类型,可重复
print(namelist)
print(namelist[1]) # 通过索引访问列表的每个元素

# 字符串和列表都属于序列的概念,所以很多方法都是类似的
# 列表的切片,可以参考字符串的相关操作
namelist = ["11", "11", 11, True, "aa"]
print(namelist[1:-1:2]) # [1,-1) 步长为2 可参考字符串

# 方法二:通过list()方法创建或强制类型转化为列表 str()  int()
a = list()  # 创建空的列表对象
print(a)

a = list("student") # 创建可迭代的列表对象
print(a)

a = list(range(10))
print(a)

# 方法三:通过列表推导式创建列表

a = [x*2 for x in range(5)]
print(a)

# 2.常用操作 len()  max()   min()   sum()
# 2.1列表的循环遍历
namelist = ["11", "11", 11, True, "aa"]

for name in namelist:
    print(name)

i = 0
while i <len(namelist):
    print(namelist[i])
    i +=1

# 2.2max()和 min() 获取列表中最大的或者最小的元素
list1 = [1,2,3,4,5]
list1 = [False, 2.0, 30, "a"]   # 字符串和数值无法比较
print(max(list1))
print(min(list1))   #相等比较取前者

# 2.3sum() 对全部为数值的元素的列表求和
list1 = [1,2,3,4,5]
print(sum(list1))


# 3.常用的数据操作
# 基本的数据操作:增删改查

# 3.1 增
# append 追加
namelist = ["11", "11", 11, True, "aa"]
print("增加前的数据".center(30, "-"))
for name in namelist:
    print(name,end=",")
temp = input("\n追加数据为:")
namelist.append(temp)   # 在末尾追加一个元素


print("增加后的数据".center(30, "-"))
for name in namelist:
    print(name, end=",")

# extend 扩展
a = [1, 2]
b = [3, 4]
a.append(b) # 将b列表当作一个元素增加到a列表中
print(a)

a.extend(b) # 将b列表中的每个元素拿出来增加到a列表中
print(a)

# + 操作
a = [1, 2]
b = [3, 4]
a = a + b   # 生成新的列表
print(a)    # 占用空间要大于extend

# * 操作
a = [1, 2]
b = a * 3
print(b)

# insert 插入
a = [1, 2]
a.insert(3, 1)
print(a)

# 3.2删 del  pop remove
#       删除  弹出  移除
namelist = ["11", "11", 11, True, "aa"]

del namelist[0]     # 在指定位置删除一个元素,没有返回值

name = namelist.pop()   # 弹出最后一个元素,有返回值(弹出元素)
print(name)

name = namelist.pop(-2)   # 弹出最后指定位置元素,有返回值(弹出元素)
print(name)

namelist.remove("11")   # 删除指定元素,如果匹配到多个,则删除第一个。 无匹配则报错
print(namelist)


# 3.3改
namelist = ["11", "11", 11, True, "aa"]
print("原内容".center(30, "-"))
print(namelist)
print("修改内容".center(30, "-"))
namelist[0] = 22
print(namelist)

# 3.4查 in   not in
find = input("请输出你想找的内容:")
namelist = ["11", "11", 11, True, "aa"]
if find in namelist:
    print("在")
else:
    print("不在")

# index
namelist = ["11", "11", 11, True, "aa"]
print(namelist.index(11, 0, 3))  # 查[0,3)范围内指定元素, 返回对应下标.找不到会报错


# count
namelist = ["11", "11", 11, True, "aa"]
print(namelist.count(11))   # 统计某个元素出现的次数


# 排序和反转
a = [1, 4, 2, 3]
print(a, id(a))

a.reverse() # 所有元素反转
print(a, id(a)) # a的内存地址没有改变

a.sort()    # 所有元素升序排序
print(a, id(a)) # a的内存地址没有改变

a.sort(reverse=True)    # 所有元素降序排序


# 4.列表的嵌套(二维,三位列表....)
namelist = []
print(len(namelist))    # 0

namelist = [[], [], []]
print(len(namelist))    # 3
print(namelist[0])  # 取列表第一个元素


  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值