python将秒转换为时分秒,以字符返回数组中只显示时分,是不是字符数组的对数组元素的长度有限制呀?

在python中,将秒转化为时分秒,以字符形式返回,为什么明明转换成05:23:19了,但是数组中只显示05:23呢,不显示秒
后来发现,无论怎样输出,反正只能显示4个字符

img

题主没有分清楚 list 和 np.array,这两个是有区别的。

timetable_best有问题,如果timetable_best是正常的二维数组,那么是可以的。由于没有给出更多的代码,不知道题主的timetable_best具体情况,建议不使用np.array处理,或者使用后将其转化为list,参考:

arr = np.array([1, 2, 3])
list1 = arr.tolist()
timetable_best = [['1', '2', '3', '4', '3436', '3445'],
                 ['2', '2', '2', '2', '1213', '3436'],
                 ['3', '4', '5', '6', '1344', '2246']]

def transform(x):
   m, s = divmod(eval(x), 60)
   h, m = divmod(m, 60)
   hour = h+4
   print("%02d:%02d:%02d" % (hour, m,s))
   return ("%02d:%02d:%02d" % (hour, m,s))

for i in range(len(timetable_best)):
   timetable_best[i][4] = transform(timetable_best[i][4])
   timetable_best[i][5] = transform(timetable_best[i][5])
print(timetable_best)

注意到输出时,np.array数据之间是没有逗号分隔的,list是有逗号分割的。

img