亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 python 中使用 format 在列中打印 n 行

在 python 中使用 format 在列中打印 n 行

忽然笑 2023-05-16 14:57:00
我想將 n 行打印到列中。列大小取決于每行中最長的數據。我有類似的東西data = [['abcdefghijk', 'b','c'],['121','313','5441256652'],['--','310','36']['642','65','10']]并想把它變成abcdefghijk    121           --     642b              313           310    65c              5441256652    36     10每列的寬度是行中最長元素的長度 + 4我知道對于這種情況我可以使用row_format ='{:<15}{:<14}{:<7}{:<7}'for v in zip(*data):    print (row_format.format(*v))但是,如何在不事先知道元素長度的情況下獲得數據中 n 行的相同模式?
查看完整描述

1 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

您可以動態構建row_format字符串:


row_format = ''.join(f'{{:<{len(max(x, key=len)) + 4}}}' for x in data)

for v in zip(*data):

    print (row_format.format(*v))

比如這個數據


data = [['a', 'bbbbbb', 'c'],

        ['121', '313', '0'],

        ['------', '310', '36'],

        ['3', '455', '5']]

是這樣打印的:


a         121    ------    3      

bbbbbb    313    310       455    

c         0      36        5


查看完整回答
反對 回復 2023-05-16
  • 1 回答
  • 0 關注
  • 180 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號