2019年4月9日火曜日

開発環境

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第I部(Pythonプログラミングの基礎)、6章(文字列操作)、6.7(演習プロジェクト)、6.7.1(表の表示)の解答を求めてみる。

コード

Python 3

#!/usr/bin/env python3
table_data = [['apples', 'oranges', 'cherries', 'banana'],
              ['Alice', 'Bob', 'Carol', 'David'],
              ['dogs', 'cats', 'moose', 'goose']]


def print_table(table_data):
    col_widths = [0] * len(table_data)
    for i, data in enumerate(table_data):
        for col in data:
            if len(col) > col_widths[i]:
                col_widths[i] = len(col)
    for j, data in enumerate(table_data[0]):
        for i, col in enumerate(table_data):
            print(table_data[i][j].rjust(col_widths[i] + 1), end='')
        print()


print_table(table_data)

入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))

C:\Users\...>py sample1.py
   apples Alice  dogs
  oranges   Bob  cats
 cherries Carol moose
   banana David goose

C:\Users\...>

0 コメント:

コメントを投稿