如何在Python中创建具有不同数据类型的数组

时间:2018-01-31 16:16:26

标签: python arrays python-2.7 numpy

从我读过的文章中我必须创建它:

fileList = np.array[("chris.txt", 2569437), ("terry.dat", 4596), ("mike.doc", 6593543),
                 ("sarah.txt", 458667), ("david.ppt", 56437456), ("flyer.jpg", 4305),
                 ("fred.png", 54966), ("randy_.ocx", 5968434), ("terry.dmg", 54485656)
                 ("rick.exe", 4538565)]

但它给了我一个错误“'(str,int)'对象不可调用”。我究竟做错了什么?我正在努力做甚么可能吗?

3 个答案:

答案 0 :(得分:1)

fileList = np.array([("chris.txt", 2569437), ("terry.dat", 4596), ("mike.doc", 6593543),
                 ("sarah.txt", 458667), ("david.ppt", 56437456), ("flyer.jpg", 4305),
                 ("fred.png", 54966), ("randy_.ocx", 5968434), ("terry.dmg", 54485656),
                 ("rick.exe", 4538565)])

您错过了调用array(...)的括号,并且在("terry", ...)之后错过了逗号

答案 1 :(得分:0)

你忘了最后一个元素之间的逗号 - python认为最后一个元素是

("terry.dmg", 54485656) ("rick.exe", 4538565)

例如 - 尝试使用2个参数调用("terry.dmg", 54485656)"rick.exe", 4538565

答案 2 :(得分:0)

你的语法有点偏。尝试:

fileList = np.array([("chris.txt", 2569437), ("terry.dat", 4596), ("mike.doc", 6593543),
             ("sarah.txt", 458667), ("david.ppt", 56437456), ("flyer.jpg", 4305),
             ("fred.png", 54966), ("randy_.ocx", 5968434), ("terry.dmg", 54485656),
             ("rick.exe", 4538565)])

请特别注意("terry.dmg", 54485656)之后缺少的逗号。