列表

列表

一、列表

1、列表的介绍

列表时Python中最基本也是最常用的数据结构之一,它时一个有序可重复的元素集合。从数据结构角度来看,Python的列表时一个可变长度的顺序储存结构,每一个位置存放的都是对象的指针。
我们可以对列表进行修改、切片、追加、删除、嵌套、成员判断等操作。

3、访问(查)列表内的元素

**创建一个列表,只需要用[]括起来,列表中可以装入任何元素

4、修改列表内的元素

可以直接用list[i]表示第i+1个元素,同时,可以通过’='进行赋值操作

5、删除列表内的元素

直接取出元素,再通过del语句(del(list[i]))或者list.remove()或者list.pop()删除。

6、列表的特殊操作

列表可以相加、展开、判断、迭代

7、常用内置函数

len(list)表示列表长度
max(list)表示列表中的最大值
min(list)表示列表中的最小值

8、排序与反转

list[::-1]表示倒序排除列表
list.reverse()逆序
list.sort()对列表内元素进行排序
list.sort(reverse=True)表示逆排序

9、切片

slice(start,stop,[step])
start: 起始位置默认为0
stop:结束位置默认最后一个元素
step:可选参数:步长,默认为1

10、列表的常用函数

list.append(object) -->在列表末尾添加新的对象
list.count(object)–>统计某个元素在列表中出现的次数
list.extend()–>用新列表扩展原来的列表
list.find()->是寻找字符串的某个值的匹配项
list.index(value)–>从列表中找出某个值第一个匹配项的索引位置
list.insert(index, object)–>将对象插入列表
list.clear()–>清空列表
list.copy()–>复制列表

二、for 循环和 range函数

1、for循环
  • for 变量 in 列表: 表示在列表中依次取出每一个元素进行操作
2、range函数
  • range(0,5)表示从0开始,以5为终止点。即0,1,2,3,4**

三、作业

1、多种方法实现a = [1, 2, 3, 4, 5, 6]–>[6, 5, 4, 3, 2, 1]
a=[1,2,3,4,5,6]
#print(a[::-1])
# a.sort(reverse=True)
# print(a)
# a.reverse()
# print(a)
print(sorted(a,reverse=True))`
2、给用户9次机会,猜1-10的数字,要求用户猜对的几率为0`a=[12]*11
a[0]=0
for i in range(1,10):
    a[i]=int(input('请输入1-10的整数:'))
    print('你猜错了,你还有%d次机会'%(9-i))
a.sort()
for j in range(0,10):
    if a[j+1]!=a[j]+1:
        unknown=a[j]+1
        break
print('正确的数是%d'%unknown)`
3、有两个列表li1=[11, 22, 33],li2=[22, 33, 44],获取它们中相同的元素def find_the_same_ones(a,b):
    k=0
    sequence=['first','second','third','fourth','fifth','sixth','seventh','eighth']
    for i in range(0,len(a)):
        for j in range(0,len(b)):
            if a[i]==b[j]:
                print(f'the {sequence[k]} same one is {a[i]}')
                k+=1

str1=[11,22,33]
str2=[22,33,44]
find_the_same_ones(str1,str2)
4、将8位老师随机分配到3个办公室中
import random
offices=[[],[],[]]
teachers=['1','2','3','4','5','6','7','8']
for teacher in teachers:
    index=random.randint(0,2)
    offices[index].append(teacher)

i=1
for office in offices:
    num=len(office)
    print('第%d个办公室有%d位老师'%(i,num))
    print(office)
    i+=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值