Python基础-列表

#list 列表 用[]“中括号”表示

num = ["a", 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]
# count 查找元素出现多少次,下面的语句表示“1”这个元素在上面的列表中出现了多少次,出现了3次。
print(num.count(1))
>>> 3

# index 查询元素的下标,如果列表里面有重复的元素,只能显示出第一个索引
print(num.index(a)) #表示在num这个列表里面a 这个元素的索引是多少,答案是索引为0
>>> 0
# 列表取值
print(num[2]) # 表示num列表中索引为2的取值是1
>>> 1
# append 从末尾增加元素
num.append(9)#表示在num这个列表的尾部增加了 9 这个元素;如果是想增加字符,num.append("f"),后面就会增加 f 这个元素啦!
print(num)
>>> ['a', 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# insert 指定位置添加元素num.insert(0, "a")#表示索引为0的位置添加了一个元素 aprint(num) >>> ['a', 'a', 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]

# num[0] = 0 #把索引为0 的元素的值,改为 0print(num)
>>> [0, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]
# 删除
del del num[0] # 表示删除num这个表里面中,索引值为 0 的这个元素。
>>>[1, 1, 1, 2, 3, 4, 5, 6, 7, 8]

pop # num.pop()#默认删除最后一个元素
# num.pop(2)#pop写入索引,就删除指定的元素

remove # num.remove("a")# 删除指定的元素

clear # num.clear() #清空列表 # print(num)

reverse #用来对列表的元素顺序进行翻转。(把列表的顺序倒过来了)num.reverse()print(num)
>>> [8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 'a']
列表排序 # num.sort()#升序 # num.sort(reverse=True)#sort 默认升序,加上reverse=True,直接降序排序 # print(num[-1])#下标-1 代表最后一个元素

num = ["a", 1, 2, 3, 4, 5, 6, 7, 8]name = ["a", "b", "c", "d"]

列表合并拼接
extend
num.extend(name) #把后面list的元素加到前面的list里面,即 把name里面的元素加到num列表里面
print(num)
>>> ['a', 1, 2, 3, 4, 5, 6, 7, 8, 'a', 'b', 'c', 'd']

info = num + name#合并两个list ,把两个list元素和并在info里面
print(info)
>>> ['a', 1, 2, 3, 4, 5, 6, 7, 8, 'a', 'b', 'c', 'd']

注:print(num.extend(name)) #这样的表达方法是错误的,因为extend这个方法没有返回值,所以不能这样做。 用in来判断一个值在不在list里面。不在 not in if username in users
一维数组
num1 = [1, 2, 3, 4, 5]
三位数组
num2 = [1, 2, 3, 4, 5, ["a", "b", "c", ["d", "e"]]] print(num2[-1])#表示取 num2 这个列表的最后一个元素
>>> ['a', 'b', 'c', ['d', 'e']]
#打印三维数组中某个元素的索引print(num2[5].index("a")) #这个表示num2这个列表里面的 第五个元素中的子列表中的 a 的索引值是多少,a在第一个位置,索引索引值为0
>>> 0

注:list 比字符串的优势,取值方便 切片 即list取值的一种方式, 取值是顾头不顾尾,注:切片的步长默认为1,不可为0 num2 = [1, 2, 3, 4, 5, ["a", "b", "c", ["d", "e"]]] print(num2[3:6]) # 这个切片表示获取从第三个元素到第六个元素的值,当前列表中只有5个元素,由于切片的性质顾头不顾尾,所以要取的最后一个值,就必须是6
>>>[4, 5, ['a', 'b', 'c', ['d', 'e']]]
print(num2[:3])#从头开始取,取到第二个元素
>>>[1, 2, 3]
print(num2[1:5:2]) #取 索引为1 到 4的值,步长为2 # print(num2[::2]) #表示取所有的值,步长为2

print(num2[::-1])#切片步长为负数,从后面往前面取值,相当于翻转了
>>>[['a', 'b', 'c', ['d', 'e']], 5, 4, 3, 2, 1] 注:步长为负数,前面为正数的,取出来为空

print(num2[1:5:-1])

>>>[] # 切片的操作适用于字符串,但是字符串的值不能修改
#注:list 是可变的;字符串和元组是不可变的

#元组
user = (“小花”,“小米”,“小明”)
print(user.count("小花")) # 统计元组中元素出现的次数
print(user.index("小花")) # 返回元组中元素的索引

 

 

#!/usr/bin/env python
# -*- coding:utf-8 -*-

# v = "李杰"
# for item in v:
# print(item)
####################################################################################################
# str
# name = "alex"

# list # 类,列表
# li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex", True] # 通过list类创建的对象,li
# list 类
# list类的一个对象


#######################################灰魔法: list类中提供的方法 #######################################

 li = [11, 22, 33, 22, 44]
# 参数
1. 原来值最后追加
# 对象.方法(..) # li对象调用append方法
# li.append(5)
# li.append("alex")
# li.append([1234,2323])
# print(li)
2 清空列表
# li.clear()
# print(li)

3 拷贝,浅拷贝
# v = li.copy()
# print(v)
4. 计算元素出现的次数
# v = li.count(22)
# print(v)

5. 扩展原列表,参数:可迭代对象
# li = [11, 22, 33, 22, 44]
# li.append([9898,"不得了"])
# [11, 22, 33, 22, 44, [9898, '不得了']]

# li.extend([9898,"不得了"])
# for i in [9898,"不得了"]:
# li.append(i)
# [11, 22, 33, 22, 44, 9898, '不得了']
#
# li.extend("不得了")
# print(li)

6. 根据值获取当前值索引位置(左边优先)
# li = [11, 22, 33, 22, 44]
# v= li.index(22)
# print(v)

7. 在指定索引位置插入元素
# li = [11, 22, 33, 22, 44]
# li.insert(0,99)
# print(li)

 8、 删除某个值(1.指定索引;2. 默认最后一个),并获取删除的值
# li = [11, 22, 33, 22, 44]
# v = li.pop()
# print(li)
# print(v)

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

10 将当前列表进行翻转
# li = [11, 22, 33, 22, 44]
# li.reverse()
# print(li)

11 列表的排序
# li = [11,44, 22, 33, 22]
# li.sort()
# li.sort(reverse=True)
# print(li)

12列表元素和字符串被修改的差别

列表元素可以被修改,且不生成新的列表,元素直接被修改的(可以想象成链表的形式)

字符串一旦创建就不会被修改,如果要修改,就必须创建新的字符串

posted @ 2019-01-08 23:19  zhangshh  阅读(221)  评论(0编辑  收藏  举报