siki学Python——列表与语句
本文主讲:Python中列表的一些相关知识
列表定
列表内可以存放多个数据,使用格式如下
massage(列表名) = [数据1,数据2,数据3]
其中数据可以是字符串,可以是数字
print()有什么用呢?
相当于换行
怎么调用列表中的元素
有一个列表为 names = [“袁海清”,“姜玲玲”,“嘿嘿嘿”] 怎么单独打印出袁海清呢?
因为“袁海清”在列表元素中占第一位即 names[ 0 ] 所以打印出 names[ 0 ]
即可打印出 袁海清
通过倒数访问列表中后几个元素 names[ -1 ] 代表访问元素中倒数第一个元素
names[ -2 ] 访问列表中倒数第二个元素
怎么截取子列表
有一个列表元素 names = [“张三”,“李四”,“王二麻子”,“大山炮”]
那怎么截取出一个新的列表元素呢,其中包含“李四”和“王二麻子“
可以这样截取 names[ 1:3 ] 其中的 1 和 3 代表原列表中第二个和第四个元素,“李四”和“王二麻子“分别为原列表中第二个和第三个元素,但是截取新列表中 3 代表的第四个元素不算,因此就截取到原列表中第三个元素
怎么修改、增加、删除列表元素
有一个列表 names = [“张三”,“李四”,“王二麻子”]
那么请分别解释下面语句的意思:
1 names [ 1 ] = “大炮”
2 names. append( “王大力” )
3 names. insert( 1,”大傻帽”)
4 del( names[ 2 ] )
5 names. Remove(“李四”)
第一句代码的意思为将 names 列表中第二个元素替换为“大炮”
第二句代码的意思是在 names 列表中最后增加一个“王大力”的元素
第三句代码的意思为在 names 列表中将“大傻帽”元素插入到列表第二个元素的位置
第四句代码的意思为删除列表中第三个列表元素
第五句代码的意思为删除 names 列表中“李四”这个元素
列表中.pop( )弹出语句的用法
有一个列表 names = [“张三”,“李四”,“王二麻子”]
那么 s = names .pop( )是什么意思?
将 names 列表中最后一个列表元素弹出,储存到变量 s 中,弹出说明原列表中没有最后一个元素了
列表元素的永久排序sort()
有两个列表,分别为字符串列表 names = [“dall”,“ollo”,“andf”] 与数字列表 size = [26,65,27,87,2,11] 怎么将两个列表从大到小排序呢?
利用 列表元素名 . sort( )来排序 例如 size . sort( ) print(size)结果为 2,11,26,27,65,87 从小到大进行排序
利用 . sort ( ) 字符串列表是通过 26 字符顺序进行排序的,但注意大写字母在小写字母之前
语句 names . sort( reverst = True ) 是将列表元素从大到小进行排序的
列表的临时排序
列表永久排序用 . Sort( ) 这个表达式,永久排序会对原列表产生影响,故不返回值
临时排序用 sorted( ) 这个表达式,这个不会对原列表产生影响,会有返回值,产生新的列表。
列表长度
有一个列表 names = [“张三”,“李四”,“张二麻子”]
利用 len(names) 表达式即可求出列表长度为 3
怎么求列表中元素的索引值
例如:有一个列表 names = [ “张三”,“李四”,“王二麻子”]
那么怎么求出列表元素 “李四”的索引值呢?
通过表达式 n1 = names . Index(“李四”) print(n1) 即可求出索引值为 1
怎么将两个列表合并到一起
方法二:利用 列表1名称 . extend(列表2名称)即可合并
利用for循环实现列表的遍历
for循环格式如下:
1 | for 临时变量 in 变量 : |
例如有一个列表 names = [“网吧”,“宾馆”,“厕所”] 利用for循环实现列表的遍历(即将所有列表元素打印一遍)
解:
1 | for temp in names : |
其中temp为临时工,names列表为垃圾桶,temp要做的就是每一次循环,从names垃圾桶里面取出一件垃圾来。
生成有规律的数字列表
例题:怎么用表达式来生成一个从10到25的有序数字列表呢?
解:通过 range(10,30)表达式可以生成 10 到 30 的有序数列,但是不是列表,那么怎么将有序数列转换成列表呢? 利用 list(range(10,30))可以将有序数列转换为有序列表
怎么调节数列增长的步长,即让数列以 2 为单位增长?
解:通过 range()语句确定第三个参数,如 range(4,10,2)的意思为,生成一个 4到 10 的数列,每次增长 2 各单位最后生成 [4, 6, 8]
问题:将1到10的平方存储到列表中
第一种解决办法如下:
第二种解决办法:利用求出的数值与原列表索引的数值关系
利用索引遍历列表
首先生成列表索引的数列,然后遍历这个数列即可
列表的最大值、最小值、求和
如由于列表 shuzi = [1,2,5,7,8,4,6,9,10] 利用 python 求出列表中的最大值与最小值和累计和
解 利用 min(shuzi ) max(shuzi ) sum(shuzi ) 可分别求出列表的最小值、最大值、累计和。
你问我答: 有数列 shuzi = [1,2,5,7,8,4,6,9,10] 那么这个语句代表什么意思呢? News = [ temp**2 for temp in News : ]
答,这个语句的意思为在列表 shuzi 的基础上重新生成一个数字列表,其中每个值对其平方处理
复制列表的两种方法
你问我答:有一个列表,shuzi = [ 1 ,5 ,8 ,9 ,4 ,2 ,5 , 4], 那怎么用两种方法将这个列表进行复制呢?这两种方法有什么不同呢?
答:第一种方法,通过字列表的形式进行复制 new = shuzi [ : ] 注意这种方法复制的列表 改变 new 列表中的值 shuzi 列表中的元素不会发生改变。
第二种方法,通过赋值的形式对列表进行复制 即 new = shuzi 这种形式的复制 改变列表中 new 元素的值,shuzi 列表中的值也会发生改变。
列表的合并
你问我答:有两个列表,分别问 L1 = [ “dd”,”hh”,”ll”] 与 L2 = [ “OO”,”QQ”] 那么怎么将两个列表合并为一个列表呢?
答:第一种方式,通过 L1 . extend ( L2 ) 可以将 L2 列表加到 L1 列表上
第二种方式:通过加法的形式可以将两种列表合并在一起, 如 L1 + L2 即可合并在一起。
元组
什么是元组?
元组就是不可以改变元素的列表,表示方法为 a = (“lala”,“haha”,“hehe”) 注意元组的表示方法要用括号表示。
持续更新中……