xuanxi 发表于 2015-12-3 09:11:44

《python核心编程》读书笔记——列表解析

  列表解析是列表类型的方法,这种方法结合了列表的方括弧、for循环、if语句。
  


[*]用for把处理后的值放入列表:



1 squared = [ x**2 for x in range(4) ]
2 for i in squared:
3   print i
4
5 0
6 1
7 4
8 9


1 [ i*2 for i in ]
2
3
  2. 挑选符合要求的值放入列表



1 sqdEvens =
2
3 for i in sqdEvens:
4         print i
5
6 0
7 4
8 16
9 36
  
  例子
  
  支持多重嵌套for循环以及多个if句子


[*]迭代一个3行5列的矩阵



1 [(x+1,y+1) for x in range(3) for y in range (5)]
2
3
4
5 [(1,1),(1,2),(1,3),(1,4),(1,5),(2,1),(2,2),(2,3),(2,4)(2,5),(3,1),(3,2)
6 (3,3),(3,4),(3,5)]
  
  


[*]磁盘文件样例



1 计算数据文件hhga.txt的单词个数(非空白字符的个数)
2
3 f= open('hhga.txt', 'r')
4 print len()
  上面这段代码等于



1 f = open('hhga.txt', 'r')
2 temp = []
3 for line in f:
4   for word in line.split():
5         temp.append(word)
6 print len(temp)
  接着进行计算字符和空白符的数量的程序,先用seek(0)回到开头



1 import os
2 an = os. stat('hhga.txt').st_size    #计算总字符数量
3 f.seek(0)                                    #回到文件开头
4 cn = sum()   #字符数量
5 bn = an - cn
6                                             
  
  

/****字符串的split()默认分隔符是空格 ' '
如果没有分隔符,就把整个字符串作为列表的一个元素***/
页: [1]
查看完整版本: 《python核心编程》读书笔记——列表解析