long90 发表于 2023-3-28 21:17:50

二维列表行列转换并右对齐

将一个二维列表的行列转换并右对齐;
思路:
        行列转换用 for 嵌套 for
        用一个列表存储每行最长字符的长度。
#! python3
# 右对齐 行列转换

table_data = [['apples', 'oranges', 'cherries', 'banana'],
            ['Alice', 'Bob', 'Carol', 'David'],
            ['dogs', 'cats', 'moose', 'goose']]

# 使用 col_width 列表保存 table_data 子列表中最长字符串的长度
col_width = *len(table_data)

# 子列表中最长字符长度,并用 col_width 保存
for i in range(0, len(col_width)):
    length = len(table_data)
    for j in range(len(table_data)):
      temp = len(table_data)
      if temp > length:
            length = temp
    col_width = length

# 右对齐行列转换
for i in range(len(table_data)):
    for j in range(len(table_data)):
      print(table_data.rjust(col_width), end='')
    print()


页: [1]
查看完整版本: 二维列表行列转换并右对齐