我正在使用Python,我有一个包含多个列表的字典,每个列表中正好有5个元素。
我想做的是打印一个漂亮的表,只有字典中列表中的元素,没有任何键。问题是由于列表中每个元素的长度不同,它打印出一个非常糟糕的表。
提前感谢你的帮助,
你好,我假设你想要这样的东西:
{
1: [512, 512, 512, 512, 512],
2: [2, 2, 2, 2, 2],
3: [20, 20, 20, 20, 20]
}
打印为:
512 2 20
512 2 20
512 2 20
512 2 20
512 2 20
你可以使用pandas模块来完成:
import pandas as pd
a={
1: [512, 512, 512, 512, 512],
2: [2, 2, 2, 2, 2],
3: [20, 20, 20, 20, 20]
}
b = pd.DataFrame(a) # create a dataframe from dictionary
b.columns = ['' for _ in range(len(b.columns))] # replace column names(keys) with empty string
print(b.to_string(index=False)) # print dataframe as table but hide row indices
编辑:要将键作为行打印,可以使用转置函数,如下所示:
import pandas as pd
a={
1: [512, 512, 512, 512, 512],
2: [2, 2, 2, 2, 2],
3: [20, 20, 20, 20, 20]
}
b = pd.DataFrame(a) # create a dataframe from dictionary
b = b.T # get transpose of b and save to b
b.columns = ['' for _ in range(len(b.columns))] # replace column names(keys) with empty string
print(b.to_string(index=False)) # print dataframe as table but hide row indices
输出应该是:
512 512 512 512 512
2 2 2 2 2
20 20 20 20 20