Python列表的介绍与创建一

数据结构:从计算机存储 组织数据的结构

      列表(List)       元组(Tuple)           字典(Dictionary)         集合(Set)

一,列表(List):

   1,基本 特点:

      a,列表中的数据按顺序排列

      b,列表有正序与倒序两种索引

      c,列表可存储任意类型数据,且允许重复

      如下图用示意图表示:

     说明:当前列表包含了 7个元素,第一个列表在最左边 代表字符串 a 之后 b c.........,列表除了放置字符串外 还能放置数字;

                可以存放任意类型数据,排列顺序是按照往列表中放置数据的顺序排列;在内存中 列表有一个简单的特点,每一个列                    表中的元素都是紧密连接在一起的吗,没有任何缝隙,可遍历;

                列表上下各有数字,被称为索引,检索数据的位置;第一个元素索引为0 第二个为1...........以此类推 递增(正序排列)

                对于倒序排列 列表最后一个值是-1,以此向前递减;

   2,列表的创建 :

        变量名 = [元素1,元素2,.....]

list = ['a','b','c','1','2','3']
print(list)

list1 =[]#空列表
print(list1)
3,列表的取值:
#语法:变量 = 列表变量[索引值]
list =['三','四','五','六','七','八']
print(list)

liu = list[3]
print(liu)

#范围取值 列表变量 = 原列表变量[起始索引:结束索引]
#在Python 列表范围取值 是 包含左边数据 不包含右边数据
list1 = list[1:4]
print(list1)
#倒序
print(list1[-1])

#列表的index函数:用于获取列表索引值,返回出现第一次匹配元素的索引;
liu_index = list.index('六')
print(liu_index)

 4,遍历列表 for循环:专门用于遍历列表,元组等数据结构

     基本用法:

        for  迭代变量  in 可迭代对象

                循环体(必须缩进)

#列表遍历
list =['已','二','三','四','无','六']
#len()获取对应列表长度
count = len(list)
print(count)
i = 0
for num in list:
    if num == '六':
        ri = count * -1 + i # 六 的倒序索引
        print(num,i,ri)
    i += 1

   while 循环遍历

list =['已','二','三','四','无','六']
#len()获取对应列表长度
count = len(list)
print(count)

i = 0
while i < len(list):
    num = list[i]
    if num == '六':
        ri = count * -1 + i  # 六 的倒序索引
        print(num, i, ri)
    i += 1

示例2:已知列表 存储1-10的元素,遍历循环输出列表中所有的偶数

numberList = [1,2,3,4,5,6,7,8,9,10]
i = 0
for n in numberList:
    if n % 2 == 0:
        m = int(i/2)+1 #输出第几个偶遇
        print("第{}个偶数是{}".format(m,n))
    i += 1

运行结果:

 

5,列表的反转与排序:

  示例:

#reverse()用于反转列表
numberList.reverse();
print(numberList)

numberList2 = [11,12,13,14,1,2,3]
numberList2.sort()#排序升序
print(numberList2)
#代表降序排序
numberList2.sort(reverse=True)
print(numberList2)

运行结果:

 

6,列表的写操作:

           新增 修改 删除

     list.append() :在列表末端追加新元素

     list.insert(索引值,新元素):在指定索引插入新元素

     list[索引] = 新值 :更新指定索引位置数据

     list[起始索引:结束索引] = 新列表:更新指定范围数据

     list.remove(元素):删除指定元素

     list.pop(索引):按索引删除指定元素

   示例:

list = ['张三','李四','赵五']
#增加新元素
list.append("王六")
print(list)

#在指定索引插入新元素
list.insert(1,'哈哈')
print(list)

#更新指定索引位置数据
list[1] = '百度'
print(list)

#更新指定范围数据
list[1:4] = ['你好','我好','大家好']
print(list)

#删除指定元素
list.remove('大家好')
print(list)

#按索引删除指定元素
list.pop(3)
print(list)

运行结果:

 

 列表其他操作:

#其他常用方法
list = ['张三','李四','赵六','赵五','赵六']

#统计出现次数
count = list.count('赵六')
print(count)

#追加操作
#append() 将整个列表追加到末尾
#extent() 将列表中的元素追加到原始列表末尾
list.extend(['杨八','无个'])
print(list)

#in  运算符用于判断数据是否在列表中存在,存在发挥True 不存在返回False
b = '张三' in list
print(b)

#copy函数 用于复制列表
list1 = list.copy()
print(list1)

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

 示例:对列表去重 并降序排期

    代码如下:

list1 = [23, 98, 56, 55, 76, 98, 55]
list2 =[]
for n in list1:
    if n not in list2:
        list2.append(n)
        list2.sort(reverse=True)
print(list2)

 运行结果:

  

 

7,嵌套列表:

   示例1:

empList = [] #保存所有信息
while True:
    info = input('请输入员工信息:')
    if info == "":
        print('程序结束')
        break
    infoList = info.split(',')
    if len(infoList) != 3:
        print('输入格式不正确')
        continue
    empList.append(infoList)
    #print(empList)
    for emp in empList:
        print('姓名:{n},年龄:{a},工资:{s}'.format(n=emp[0],a=emp[1],s=emp[2]))

 

 示例2:在终端输入月份,并判断该月份属于春,夏,秋,冬中的哪一个季节。

   代码如下:

reason = [[3, 4, 5], [6, 7, 8], [9, 10, 11], [12, 1, 2]]
month = input('请输入1-12月之间的月份:')
month = int(month)
if month in reason[0]:
    print("{}月是春季".format(month))

elif month in reason[1]:
    print("{}月夏季".format(month))

elif month in reason[2]:
    print("{}月秋季".format(month))

elif month in reason[3]:

    print("{}月冬季".format(month))
else:
    print('您输入的月份有误!!')

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值