我有一個構建鄰接矩陣的函數。我想提高人類的矩陣可讀性,所以我決定像這樣打印行索引:現在我想以相同的方式打印列索引,但我無法正確執行此操作。我得到的最好的結果是這樣的:任何想法和建議如何整齊地打印列索引?源代碼在這里。def generate_adjacency_matrix(vertices): # Create empty Matrix matrix = [['.' for _ in range(len(vertices))] for _ in range(len(vertices))] # Fill Matrix for row in range(len(matrix)): for num in range(len(matrix)): if num in vertices[row]: matrix[row][num] = '1' # Print column numbers numbers = list(range(len(matrix))) for i in range(len(numbers)): numbers[i] = str(numbers[i]) print(' ', numbers) #Print matrix and row numbers for i in range(len(matrix)): if len(str(i)) == 1: print(str(i) + ' ', matrix[i]) else: print(i, matrix[i])如果它很重要,我的函數中的參數是一個字典,看起來像:{0:[1], 1:[0,12,8], 2:[3,8,15] .... 20:[18]}
1 回答

喵喔喔
TA貢獻1735條經驗 獲得超5個贊
如果您知道自己只會達到 20 個字符,那么只需將所有內容填充到 2 個字符即可:
對于標題行:
numbers[i] = str(numbers[i].zfill(2))
對于其他行,設置為“.”或“.1”或其他看起來很整潔的內容。
這似乎是最簡單的方法。
另一種方法是有2列標題,一個在另一個之上,第一個是十進制值,第二個是單位值。這允許您在表中保持1的寬度,這也許是您需要的。
添加回答
舉報
0/150
提交
取消