时间:2021-07-01 10:21:17 帮助过:69人阅读
一、前言
本文主要使用python 的raw_input() 函数读入多行不定长的数据,输入结束的标志就是不输入数字情况下直接回车,并填充特定的数作为二维矩阵
二、代码
def get2DlistData(): res = [] inputLine = raw_input() #以字符串的形式读入一行 #如果不为空字符串作后续读入 while inputLine != '': listLine = inputLine.split(' ') #以空格划分就是序列的形式了 listLine = [int(e) for e in listLine ] #将序列里的数由字符串变为int类型 res.append( listLine ) inputLine = raw_input() return res def get2DMatData( inList , val ): ''' 输入:inList为不等长的二维数组,val为需填充的值输出:np.array的形式输出填补完的二维矩阵 ''' maxCols = 0 #获得最大长度的子序列 for i in range( len( inList ) ): lenI = len( inList[i] ) if lenI > maxCols: maxCols= lenI #对每个子序列作填充 for i in range( len( inList ) ): num = len( inList[i] ) while(num <= maxCols): inList[i].append( val ) num += 1 return np.array( inList , dtype = np.int64 ) if __name__=='__main__': inData = get2DimData() print inData print '\n' matArray = get2DMatData(inData , 0) print( matArray )
三、运行结果
相关推荐:
python读入文件和time/sys模块的简单使用
以上就是python 读入多行数据的详细内容,更多请关注Gxl网其它相关文章!