Python学习4 列表基础知识和常用函数

Posted DQ_CODING

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习4 列表基础知识和常用函数相关的知识,希望对你有一定的参考价值。

列表

1.格式

2.增删改查
列表下标:
0–n-1
-n-(-1)

#对列表进行切片
#1-n
#-n-(-1)
list=['dq','python','mm']
print(list[0:2])
print(list[-3:-2])
#输出
#['dq', 'python']
#['dq']

3.添加元素
x元组,可迭代对象

#添加元素append
list=['dq','python','mm']
print(list)
list2=['dq','python','mm']
list.append(list2)
print(list)
list.append('2435')
print(list)
#输出
# ['dq', 'python', 'mm']
# ['dq', 'python', 'mm', ['dq', 'python', 'mm']]
# ['dq', 'python', 'mm', ['dq', 'python', 'mm'], '2435']

#添加元素insert
list=['dq','python','mm']
print(list)
list.insert(2,'33')
print(list)
#输出
#['dq', 'python', 'mm']
#['dq', 'python', '33', 'mm']

#添加元素extend
list=['33','jjjk','dq']
print(list)
x=('3243','3454')
list.extend(x)
print(list)

4.删除元素

#删除元素pop
list=['dq', 'python', 'mm']
print(list)
list.pop()
print(list)
list.pop(0)
print(list)
#输出
#['dq', 'python', 'mm']
# ['dq', 'python']
# ['python']

#删除元素remove
list=['dq', 'python', 'mm']
print(list)
list.remove('python')
print(list)
#清空元素clear
list=['dq', 'python', 'mm']
print(list)
list.clear()
print(list)#[]
#清空元素del
list=['dq', 'python', 'mm']
print(list)
del list
print(list)#<class 'list'>

5.修改元素

#修改元素
list=['dq', 'python', 'mm']
list[0]='i love python'
print(list[0])
print(list)

6.查询元素
(1)index查询指定数据在列表里面的最小索引,如果没有,会报错

(2)count查询指定数据在列表中出现的次数

(3)in运算符,查询指定函数是否在列表中,返回布尔数据

#查询元素
#(1)index查询指定数据在列表里面的最小索引,如果没有,会报错

# (2)count查询指定数据在列表中出现的次数
# 
# (3)in运算符,查询指定函数是否在列表中,返回布尔数据

name = ['小陈','小红','小王','老王','老陈','小刘','小风','小刚','小赵']
print(name.index('小王'))
print(name.count('小王'))
print('赵日天' in name)
#输出
# 2
# 1
# False

list的地址传递

#地址传递
num1=[0,0,100]
num2=num1
num1[1]=88
print(num2)
#输出
#[0, 88, 100]

使用内置函数 id() 可以获取到一个变量的内存地址
代码:

#地址传递
num1=[0,0,100]
num2=num1
#26983000 26983000
print(id(num1),id(num2),sep=' ')
num1[1]=88
#26983000 26983000
print(id(num1),id(num2),sep=' ')
print(num2)
#输出
#[0, 88, 100]

list的遍历


#列表遍历for
list=['小陈','小红','小王','老王','老陈','小刘','小风','小刚','小赵']
for i in list:
    print(i)

# 列表遍历while
i=0
while i<len(list):
    print(list[i])
    i+=1

list的排序

使用 list.sort() 会将 list 进行升序排序,返回 NoneType ,影响 list 本身【小-大】
使用 sorted(list) 会将 list 进行升序排序,返回 list ,不影响 list 本身【小-大】

#list排序sort-影响本身
list = ['2341', '962', '67', '34567']
print(list)
list.sort()
print(list)
#list排序sorted-不影响本身
list = ['2341', '962', '67', '34567']
print(list)
print(sorted(list))
print(list)

翻转:reserve


#list翻转
list = ['2341', '962', '67', '34567']
print(list)
list.reverse()
print(list)

编程实现冒泡排序算法,实现对[6, 5, 3, 1, 8, 7, 2, 4]的排序。
思想:让一个数字和它相邻的下一个数字进行比较运算,如果前一个数字大于后一个数字,则交换两个数据的位置。

#列表冒泡排序
#按第一个字符ASCII码排序
list=['2341','962','67','34567']

print(list)
for i in range(len(list)-1):
    for j in range(len(list)-1-i):
        if list[j]>list[j+1]:
            temp=list[j]
            list[j]=list[j+1]
            list[j+1]=temp

print(list)

练习1-求列表中最大值及下标

#求列表中最大值及下标-sorted
list=[1,345,32435,78,324,7685]
list2=sorted(list)
print(('最大值=%d 下标=%d')%(list2[len(list2)-1],list.index(list2[len(list2)-1])))
#求列表中最大值及下标-for
list = [1, 345, 32435, 78, 324, 7685]
max = index = 0
for i in list:
    max=max if max >i else i
    index=list.index(max)
print(('最大值=%d 下标=%d')%(max,index))

练习2-移除列表空字符串

#移除列表空字符串remove()-每次只移除一个
list = ['小陈', '小红', '', '小王', "", '老王', '老陈', "", '小刘', '小风', '小刚', '小赵']
print(list)
for i in list:
    if i=='':
        list.remove('')
print(list)

以上是关于Python学习4 列表基础知识和常用函数的主要内容,如果未能解决你的问题,请参考以下文章

Python学习5 元组基础知识和常用函数

Python学习笔记#列表操作常用的函数

Python基础_20191102

python常用代码

想学python从哪里入手

python学习DAY3(列表)