python 12 列表list

列表:通过list类创建的对象,用中括号“【】”括起来,用“,”分割每个元素,元素可以是 数字、字符串

#D12 B1
# '''列表的魔法'''

'''什么是列表'''
li = [1, 2, 3, "abc", ["wuyi", "wxl", "吴学龙"], "李海玲"]  # 元素为列表的情况举例
# 列表中的元素可以是 数字、字符串、列表、布尔值等集合,都可以放,内部放置任何东西

'''1、索引取值'''
print(li[1])  # 结果:2
print(li[4])  # 结果:['wuyi', 'wxl', '吴学龙']
'''2、切片取值,结果也是列表'''
print(li[2:-1])  # 结果:[3, 'abc', ['wuyi', 'wxl', '吴学龙']]

'''3、for循环 while循环'''
for item in li:
    print(item)
# 结果:
# 1
# 2
# 3
# abc
# ['wuyi', 'wxl', '吴学龙']
# 李海玲
'''4、列表元素,可以被修改'''
li = [1, 2, 3, "abc", ["wuyi", "wxl", "吴学龙"], "李海玲"]  # 元素为列表的情况举例
li[1] = 20
print(li[1])  # 结果:20

'''5、列表元素、可以删除'''
del li[0]  # 1索引方式
print(li)  # 结果:[20, 3, 'abc', ['wuyi', 'wxl', '吴学龙'], '李海玲']
li[1:2] = [3, 6, 9]  # 2、切片方式
print(li)  # 结果:[20, 3, 6, 9, 'abc', ['wuyi', 'wxl', '吴学龙'], '李海玲']

'''6、in'''  # 列表中的元素
v = "abc" in li
print(v)  # 结果:True

'''7、操作'''
li = [1, 2, 3, "abc", ["wuyi", ["19", 10], "wxl", "吴学龙"], "李海玲", True]
print(li[4][1][0])  # 结果:19
print(li[4][1][0][1])  # 结果:9

'''8、转换'''
# 8、1字符串转列表,内部使用for循环
s = "abcdefg"
new_li = list(s)
print(new_li)  # 结果:['a', 'b', 'c', 'd', 'e', 'f', 'g']
# 8、2列表转字符串
# 方式一:需要自己写for循环一个一个处理:既有数字又有字符串
li = [11, 22, 33, "abc", "123"]
r = str(li)
print(r)  # 结果:[11, 22, 33, 'abc', '123']
s = ""
for i in li:
    s = s + str(i)
print(s)  # 结果:112233abc123
# 方式二:直接使用字符串join方法:列表中元素只有字符串 ---如何转换为字符串:
li = ["123", "abc"]
v = "".join(li)
print(v)  # 结果:123abc


'''1、原值后追加'''
li = [11, 22, 33, 44]
v1 = li.append([987, "不得了"])  # append:追加
print(v1)  # None
print(li)  # [11, 22, 33, 44, [987, '不得了']]
'''1、扩展原列表'''
li = [11, 22, 33, 44]
li.extend([987, "不得了"])
print(li)  # 结果:[11, 22, 33, 44, 987, '不得了']
#相当于下面例程
for i in [987,"不得了"]:
    li.append(i)
print(li)
#参数可迭代对象(for循环)
li = [11, 22, 33, 44]
li.extend("你好吗")
print(li)#结果:[11, 22, 33, 44, '你', '好', '吗']

'''2、清空列表'''
li.clear()
print(li)  # 结果:[]

'''3、拷贝(浅copy)'''
li = [11, 22, 33, 44, 555555]
v3 = li.copy()
print(v3)  # 结果:[11, 22, 33, 44, 555555]

'''4、计算元素出现的次数'''
li = [11, 22, 33, 29, 44]
v4 = li.count(22)
print(v4)  # 结果:1

'''5、根据值获取索引index(self,value,start=None,stop=None):'''
li = [11, 22, 33, 44, 22]
v5 = li.index(22)
print(v5)  # 结果:1
v5_b = li.index(22, 2, 6)
print(v5_b)  # 结果:4 表示第四位为22

'''6、在指定索引位置插入元素'''
li = [11, 22, 33, 44, 22]
li.insert(1, 99)  # 在第一个位置插入99这个值
print(li)  # 结果:[11, 99, 22, 33, 44, 22]

'''7、删除某个值,并获取该值'''
li = [11, 22, 33, 44, 22]
v7 = li.pop() #默认删除最后一位并获取,可按索引删除
print(v7)  # 结果:22
print(li)  # 结果:[11, 22, 33, 44]

'''8、删除列表中的指定值,左边优先'''
li = [11, 22, 33, 44, 22]
li.remove(22)
print(li)  # 结果:[11, 33, 44, 22]
# PS:pop   remove   del li[0]  del    li[7:9]    clear

'''9、将当前列表进行翻转'''
li = [11, 22, 33, 44]
li.reverse()
print(li)  # 结果:[44, 33, 22, 11]

'''10、列表的排序'''
li = [11, 44, 66, 55, 22, 33, 44]
li.sort()
print(li)  # 正向排序[11, 22, 33, 44, 44, 55, 66]
li.sort(reverse=True)
print(li)  # 反向排序[66, 55, 44, 44, 33, 22, 11]
'''11、cmp'''
'''12、key'''
'''13、sorted'''

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值