Python笔记(2)——列表一:列表简介(Python编程:从入门到实践)

一、列表是什么

  1. 列表 :由一系列按 特定顺序 排列的元素组成(列表是 有序集合 )。

  2. 表示 :用 方括号[] 来表示,并用 逗号 来分隔其中的元素。

  3. 访问 :访问列表元素,可指出 列表的名称 ,再指出 元素的索引 ,并将其放在 方括号内 。请求获取列表元素时,Python只 返回该元素 ,而不包括方括号和引号。

  4. 列表索引从0开始 :在Python中, 第一个列表元素的索引为0 ,而不是1。要访问第四个列表元素,可使用索引3。索引-1返回列表最后一个元素。 索引-2返回倒数第二个列表元素

  5. 使用列表中的各个值 :可像使用其他变量一样使用列表中的各个值。例如,可使用 拼接(+) 根据列表中的值来创建消息。

 1  F=[ '  red  ' , '  blue  ' , '  green  ' , '  yellow  '  ]  2  
 3   #  访问列表元素: 
 4   print (F[2])   #  列表名称+[索引] 
 5  
 6   #  列表索引从0开始: 
 7   print (F[0])  #  第一个元素 
 8   print (F[3])  #  第四个元素 
 9   print (F[-1])  #  最后一个元素 
 10   print (F[-3])  #  倒数第三个元素 
 11  
 12   #  使用列表中的各个值: 
 13   print ( "  我最喜欢的颜色是  " +F[0]+ "    " )

运行代码结果如下:

二、修改、添加和删除元素 

  1.修改列表元素

  要修改列表元素,可指定 列表名 和要修改的 元素的索引 再指定该元素的新值 列表名[索引]=新值】

 1   #  1.修改列表元素: 
 2  F=[ '  red  ' , '  blue  ' , '  green  ' , '  yellow  '  ]  3   print  (F)  4  F[2]= "  black  "   #  列表名[索引]=新值 
 5   print (F)

代码运行结果:

   2. 添加列表元素

   (1)在列表末尾添加元素:使用方法.append()。可创建一个空列表,再使用一系列的append()语句添加元素。 列表.append(值)】

  (2)在列表中插入元素:使用方法.insert() 在列表任何位置添加新元素。 列表.insert(索引,值)】。 要特别注意当索引为负值时插入的位置。

 1   #  2.添加列表元素 
 2  A=[90,80, '  green  '  ]  3   print  (A)  4   #  (1)在列表末尾添加元素 
 5  A.append(100)   #  列表名.append(值) 
 6   print  (A)  7   #  (2)在列表中插入元素 
 8  A.insert(1,20.6)   #  列表名.insert(索引,值) 
 9   print  (A)  10  A.insert(-1,55)   #  注意:列表.insert(索引 = -1, 值)时,当索引 = 负数时,是从倒数倒数第二位开始插入。 
 11   print (A)

  代码运行结果:

   3.删除列表元素

   (1)使用del语句删除:前提是知道索引。 del 列表[索引]】

  (2)使用方法.pop()删除:方法pop()可删除列表元素,并接着使用它。 方法中无参数时,默认删除列表末尾元素。 列表.pop(索引)】

  (3)根据值删除元素:不知道元素索引,知道值,使用.remove()方法删除,使用remove()从列表中删除元素时,也可接着使用它的值。 列表.remove(值)】

注意:方法remove()只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要 使用循环来判断是否删除了所有这样的值。
 1   #  3.删除列表元素: 
 2  B=[ "  C#  " , "  C++  " , "  python  " , "  java  " , "  GIS  " , "  RS  " , "  WebGIS  "  ]  3   print  (B)  4  
 5   #  (1)使用del语句删除 
 6   del  B[1]  #  del 列表[索引] 
 7   print  (B)  8  
 9   #  (2)使用方法pop()删除 
 10  B.pop()  #  方法中无参数时,默认删除列表末尾元素。列表.pop() 
 11   print  (B)  12  b1=B.pop()  #  使用方法pop()删除列表元素时,可以接着使用它。所以将其赋值给变量f1 
 13   print  (b1)  14   print  (B)  15  B.pop(0)  #  删除指定位置元素。列表.pop(索引) 
 16   print  (B)  17  
 18   #  (3)根据值删除:不知索引,使用方法 .remove() 
 19  C=[11,22,33,44,55,66 ]  20   print  (C)  21  C.remove(33 )  22   print  (C)  23  mm=66  #  使用remove()从列表中删除元素时,也可接着使用它的值。但是它的使用与.pop()不同,不能使用变量=列表.remove(),而是命名变量=列表元素 
 24   C.remove(mm)  25   print  (C)  26   print ( "  That man is  " +str(mm)+ "  years old.  " )  #  要用str()将mm转为字符串输出,不然会报错:TypeError: can only concatenate str (not "int") to str 

代码运行结果:

三、组织列表

  1. 使用方法 .sort()对列表进行 永久性排序

   方法.sort() 按字母顺序排列永久改变列表顺序,如果要按字母顺序相反方向排列元素,则需向 方法 中传递参数 reverse=True 【列表.sort()】或【列表.sort(reverse=True)】

 1   #  使用方法 sort()对列表进行永久性排序 
 2  Alist1=[ '  Python  ' , '  123  ' , '  WebGIS  ' , '  Cnblogs  '  ]  3   print  (Alist1)  4  Alist1.sort()  #  降序排列 
 5   print  (Alist1)  6  Alist2=[ '  Python  ' , '  123  ' , '  WebGIS  ' , '  Cnblogs  '  ]  7  Alist2.sort(reverse=True)  #  升序排列 
 8   print (Alist2)

代码运行结果:

  2. 使用 函数 sorted() 对列表进行 临时排序

  函数sorted()按字母顺序临时改变列表顺序,如果要按字母顺序相反方向排列元素,则需向 函数 中传递参数 reverse=True【sorted(列表)】或【sorted(列表,reverse=True)】

注意:临时排序与永久排序不一样:临时排序定义列表后,不能【sorted(列表)】再【print(列表)】。因为是临时排序,直接【print(列表)】会输出原列表。

 1   #  使用函数 sorted()对列表进行临时性排序 
 2   print ( "  降序排列  "  )  3  Alist1=[ '  123  ' , '  Cnblogs  ' , '  Python  ' , '  WebGIS  ' , '  B  ' ]  #  定义列表 
 4   print (Alist1)  #  输出原列表 
 5   print (sorted(Alist1))   #  临时降序排序 
 6   print (Alist1)  #  再次输出列表,与原列表相同 
 7  
 8   print ( "  \n升序排列  "  )  9  Alist2=[ '  Python  ' , '  123  ' , '  WebGIS  ' , '  Cnblogs  ' ]  #  定义列表 
 10   print (Alist2)  #  输出原本列表 
 11   print (sorted(Alist2,reverse=True))  #  输出临时升序排列!注意反向排序表达! 
 12   print (Alist2)  #  再次输出列表,与原列表相同 
 13   #  注意临时排序与永久排序不一样:临时排序定义列表后,不能【sorted(列表)】再【print(列表)】。因为是临时排序,直接【print(列表)】会输出原列表。 

代码运行结果:

  • 拓展一:字符编码排序

python默认编码:

  python 2.x默认的字符编码是ASCII,默认的文件编码也是ASCII。

  python 3.x默认的字符编码是unicode,默认的文件编码是utf-8。

两种编码方式排序相同:以十进制表示部分字符编码:

0~9:48~57

A~Z:69~90

a~z:97~122

  • 拓展二:函数和方法形式上的区别

  (1)方法:【变量.方法(其他参数)】,其他参数可无。例如:Alist.sort(reverse=True)

  (2)函数:【函数(变量,其他参数) 】,其他参数可无。例如:sorted(Blist,reverse=True)

  3. 倒着打印列表

   要反转列表元素的排列顺序,可使用 方法.reverse() 。方法.reverse() 永久性地修 改列表元素的排列顺序,但可随时恢复到原来的排列顺序,只需对列表再次调用reverse()即可。

注意:.reverse()不是指按与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排 列顺序

 1  D=[ '  a  ' , '  c  ' , '  100  ' , '  e  ' , '  A  '  ]  2   print (D)  #  原列表 
 3  D.reverse()  #第一次反转  4   print  (D)  5  D.reverse() #第二次反转,变回原列表  6   print (D)

代码运行结果:

  4. 确定列表的长度

  使用函数len()获取列表长度。 【len(列表)】

注意:python计算元素时从1开始,要与列表索引区别开。

 1  D=[ '  a  ' , '  c  ' , '  100  ' , '  e  ' , '  A  '  ]  2   print (len(D))

代码运行结果:

标签: python

添加新评论