首页 > 代码库 > python学习笔记

python学习笔记

最近在学习python,使用过程中有个List和dict的声明比较特殊,在此备注下

字典是可变对象,初始化一定不能放在for循环前面
List声明必须放在程序开头(按道理List也是可变对象,但不知道为什么一定要在刚开始时就声明)
代码中如果names=[]放在for循环里面, 其names.append()完后,print names永远只打印最后一个值;另外下面代码中dic={}的声明刚开始放在for循环前面,也会导致字典表的打印一直打印最后一次的内容
以下代码是练习Vamei老师给的题目,返回文本中分数小于60的人名
record.txt内容如下:
# name, age, scoretom, 12, 86Lee, 15, 99Lucy, 11, 58Joseph, 19, 56
我自己研究完写了这么一段:
def readFiles():    L=[]    names=[]    f=open("E:\\record.txt","r")    for line in f:        dic={}        if line[0]=="#":            li0=line[1:-1].split(",")            #print li0        else:            li1=line[0:-1].split(",")           #print li1            dic["name"]=li1[0]            dic["age"]=li1[1]            dic["score"]=li1[2]            L.append(dic)    print L    f.close()    for i in range(len(L)):        #print L[i]["score"]        #names=[]        if L[i]["score"]<"60":            names.append(L[i]["name"])            #print names    print names    

  vamei老师的教程不错,写的简单明了,适合新手入门。http://www.cnblogs.com/vamei/tag/Python/default.html?page=3

python学习笔记