为了账号安全,请及时绑定邮箱和手机立即绑定

list[[]*3] 、 list[[],[],[]]和list[[]]*3区别

list[[]*3] 、 list[[],[],[]]和list[[]]*3区别

qq_风_172 2017-01-13 16:50:27
以下是我的测试代码,输出结果都不相同,使用Python3.6在pycharm上编写的代码: result=[[]]*6 #result=[[]*6] #result=[[],[],[],[],[]] with open('2.txt','r') as f:     for line in f:         tmp=line.split()         result[0].append(tmp[0])   #对result中第一个list添加tmp[0]         result[1].append(tmp[1])         result[2].append(tmp[2])     print(result) 望各位不吝赐教,如果要定义result=[[],[],[]……],里面有N个空列表,该如何定义呢?
查看完整描述

1 回答

已采纳
?
清波

TA贡献165条经验 获得超90个赞

没有看懂题主的意图,从代码看,是想将每行的每个词,分别放入多维列表中,可是各行的单词数是不同的,要不要用“稀疏数组(列表)”呢,当然python自带的列表并没有稀疏概念,就用None 表示;或者不用稀疏数组,直接将对应索引的单词按照行序放入多维列表?

#无稀疏数组(列表/矩阵)代码
result=[]
with open('2.txt','r') as f:
    for line in f:
        for index,value in enumerate(line.split()):
            try:
                result[index].append(value)
            except IndexError:
                result.append([])
                result[index].append(value)
#稀疏数组(列表/矩阵)代码
算了好难写,既然已经给自己挖了坑,那我就在坑底躺着吧,不写了。
Python 有一些稀疏矩阵的模块和包,百度就可以。


查看完整回答
1 反对 回复 2017-01-14
  • 1 回答
  • 0 关注
  • 1655 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信