python 读取文档 并创建任意多的list
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 读取文档 并创建任意多的list相关的知识,希望对你有一定的参考价值。
请问如何并创建任意多的list
filename = r'a.txt'
alist1 = []
alist2 = []
lines = open(filename,'r').readlines()
alist1 = [line.strip().split( )[0] for line in lines ]
alist2 = [line.strip().split( )[3] for line in lines ]
在上段代码中 我从一个a。txt文件中读取了他的第一列和第四列 分别构成了两个list(alist1%alist2)
现在我希望能把a.txt文件中的每一列都提取成一个list,但我不知道a。txt文件中一共有多少列
求在原来代码的基础上 改成可以计算a.txt一共多少列(例如用len),然后把每一列都变成一个list的循环代码 (例如程序扫描到a.txt中有9列 就创建9个list来装每一列)
谢谢!
dlist=
for line in open(filename,'r'):
cols=line.split()
for col in range(len(cols)):
dlist.setdefault(col,[]).append(cols[col])
for col in range(len(dlist)):
print(dlist[col])追问
您好 谢谢你啦 请问您能帮忙解释一下3到6行 每行的意思么 不是很明白 谢谢
追答for line in open(filename,'r'): #按行读取文件,存入变量 line
cols=line.split() #将行分隔成列,cols为列列表
for col in range(len(cols)): #将列号依次分配给变量col,列号从0到 len(cols)-1
dlist.setdefault(col,[]).append(cols[col]) #将每列添加到对应列表中,列表为字典dlist中以列号为键对应的值
filename = 'a.txt'
first = open(filename).readline()
col_len = len(first.split()) #以第一行为标准算有多少列
col_all = [[] for i in range(col_len)]
for line in open(filename):
for i, data in enumerate(line.split()):
col_all[i].append(data)
print col_all
python--列表
列表的定义
定义一个空列表
list = []
定义一个包含元素的列表,元素可以是任意类
型,包括数值类型,列表,字符串等均可。
列表的索引
下标是从0开始计算,比如list[0]读取的是列
表的第1个元素;
list[-1]读取的是列表的倒数第1个元素;
列表的切片
同于字符串的重复,连接,长度,子串判断等
查看列表的可用操作:
dir(li)
列表的添加
列表可通过append方法添加元素;
如果我想添加多个元素,列表可通过extend方法添加元素
在指定位置添加元素使用inert方法;
L.insert(index, object)
列表的修改
修改列表的元素:直接重新赋值;
列表的查看
查看某个列表元素的下表用index方法;
查看某个列表元素出现的次数用count方法;
列表的删除
list.remove(list[])
list.pop() 弹出列表中最后一个元素
列表的删除
del(list[])
以上是关于python 读取文档 并创建任意多的list的主要内容,如果未能解决你的问题,请参考以下文章