python基础--list

一、常用函数

l = [1, 3, 2, 3, 2, 65, 23]
r = ['a', 'b', 'c']

# 从list中获取数据
l1 = l[0]                    # 其中index是lis中的下标,从0开始取,当写的下标超出范围时,会抛出异常
print('通过下标获取指定位置的值l1:', l1)
l2 = l[-1]                   # 代表取最后一个元素
print('使用-1下标获取list最后一个元素l2:', l2)

# 向list中增加数据
l.append(6)                  # 在list尾部插入数据
print('向l中append值后的l:', l)
l.insert(0, '34')            # 指定下标插入数据,当写的下标不存在时,会抛出异常
print('指定0下标insert内容后的l:', l)

# 修改list中的数据
l[0] = 99                    # 修改指定下标位置的内容,当指定的下标不存在时,会报错
print('指定位置增加内容后的l:', l)

# 删除list中的数据
l3 = l.pop(0)                # 指定下标位置进行删除,返回的是删除的内容,index超出范围时,抛出IndexError: pop index out of range
print('删除的内容:', l3)
print('pop后的l:l', l)
l.remove(3)
print('remove后的l:', l)
'''
删除指定内容,当删除的内容在lis中有多个时,删除index最小位置的内容;
remove函数没有返回值,输入时不能输出lis.remove('content'), 只能输出list;
当列表内容时数字时,指定删除时不能加引号
'''

del l[0]                     # 指定下标位置进行删除
print('del后的l:', l)
'''
注:不要循环过程中删除list中的内容,因为下标会错乱
1)可边循环把自己需要的内容写去另一个list
2)可把原list深拷贝一份出来,循环的时候使用一份,删除的时候使用另一份
'''

# 排序函数
l.sort()
print('sort后的l:', l)
'''
默认正序排列,加上参数reverse后,倒序排列:lis.sort(reverse=True)
该函数无返回值,修改的是原list的顺序
'''

l4 = sorted(l)
print('sorted的l4:', l4)
'''
该函数是内置函数,排序后有返回结果,print(sorted(lis))
可正常输出结果
该函数对list排序后会返回新list,不改变原来list的顺序
'''

# 多个list的合并
tl = l + r
print('+合并后的list:', tl)           # 两个list的内容拼接在一起,生成一个新的list,连接的时候list写在 + 前面,拼接后的内容list就在前面
l.extend(r)
print('使用extend合并后的list:', l)   # lis2的内容添加到lis1中,不会新生成一个list,会改变lis1原来的内容

# 使用切片
aList = [1, 2, 3]
bList = ["www", "pythontab.com"]
aList[len(aList):len(aList)] = bList
print('使用切片方式对两个list进行合并后的内容:', aList)

# 使用append
l.append(r)
print("r append到l后的l:", l)             # 该方法时将r作为一个元素插入l,最终会生成一个二维的list


# 判断list中是否包含某值
print('查看2是否在l中:', 2 in l)                # 返回True 或False
print('查看1是不是不在l中:', 1 not in l)        # 返回True 或False

# 对list进行去重
sl = [1,2,3,4,2,4,3]
sl = set(sl)                                # 不能对二维数组进行去重
print("使用set去重后的l:", sl)

# 使用循环对list进行去重
'''
使用循环对list
'''
lis1 = [1, 2, 3, 1]
lis2 = []
for i in lis1:
    if i not in lis2:
        lis2.append(i)
print('使用循环去重后的list:', lis2)

# 对list进行反转
rel = l.reverse()
print('使用reverse进行反转后的l:', )
l5 = l[::-1]              # - 1是step
print('l使用切片进行反转的l5:', l5)

# 其他函数
# 1) count
cl = [1,2,3,4,2,3,1,2]
count = cl.count(2)
print('cl中2总共出现了:', count)

lis1 = ['acb', 'a']
print('lis1中包含几个a:', lis1.count('a'))       # 统计content在list中出现的次数,content在list中是一个整体,输出结果是1

# 2) index
'''
返回的是content的索引值
当list中包含多个content时,返回的是列表中的第一个content的索引值
当content在lis1中不存在时,ValueError: 'b' is not in list
'''
index = cl.index(2)
print('第一个2在cl中的下标是:', index)


# 3) '符号'.join(lis1)
print('使用*将cl中的所有内容都连接起来:', ' '.join(r))     # 使用符号将lis1中的内容全部内容连接起来,list中的值为int时不可用

# 4)zip(lis1, lis2)
'''
将lis1和lis2两个列表中对应位置的值合成一个元组
当两个list的长度不一致时,以长度最短的那个list为准
'''
lis1 = [1, 2, 3]
lis2 = ['a', 'b', 'c']
zl = zip(lis1, lis2)              #zip后的结果需要输出的话,需要转为list,结果为[(1, 'a'), (2, 'b'), (3, 'c')]
print('zip后的list zl:', list(zl))

zl1, zl2 = zip(*zip(lis1, lis2))   # 将zip()函数的内容反解出来
print('zl1:', zl1, '\nzl2:', zl2)

# 6)len(lis1)
print('获取l的长度:', len(l))   # 返回lis1的长度

运行结果:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值