>>> import csv_normal as csv
>>> x = csv .str2csv ( """
City name, Area, Population, Annual Rainfall
Adelaide, 1295, 1158259, 600.5
Brisbane, 5905, 1857594, 1146.4
Darwin, 112, 120900, 1714.7""" )
>>>
>>> x.trim ( ) #空の行、空の列を削除
>>> x.header_idx = 0 #ヘッダーを行指定
>>> x.data_row_range = slice ( 1 , None ) #データ範囲を行指定
>>>
>>> x.print2 ( )
+----------+------+----------+----------------+
|City name |Area |Population|Annual Rainfall |
+----------+------+----------+----------------+
|Adelaide | 1 _295| 1 _158_259| 600.50 |
+----------+------+----------+----------------+
|Brisbane | 5 _905| 1 _857_594| 1 _146.40|
+----------+------+----------+----------------+
|Darwin | 112 | 120 _900| 1 _714.70|
+----------+------+----------+----------------+
>>>
>>> #表示フォーマットの調整確認(ヘッダーは中央揃え、Populationのデータも中央揃え、文字幅は全部20)
>>> x.print_chg_format ( header_aligns= { None :'^' } , aligns= { x[ 'Population' ] :'^' } , widths= { None :20 } )
City name , Area , Population , Annual Rainfall
Adelaide , 1 _295, 1 _158_259 , 600.50
Brisbane , 5 _905, 1 _857_594 , 1 _146.40
Darwin , 112 , 120 _900 , 1 _714.70
>>>
>>> #表示フォーマットの固定&枠付け
>>> y = x.wrap_border ( header_aligns= { None :'^' } , aligns= { x[ 'Population' ] :'^' } , widths= { None :20 } )
>>> y.print ( )
+--------------------+--------------------+--------------------+--------------------+
| City name | Area | Population | Annual Rainfall |
+--------------------+--------------------+--------------------+--------------------+
|Adelaide | 1 _295| 1 _158_259 | 600.50 |
+--------------------+--------------------+--------------------+--------------------+
|Brisbane | 5 _905| 1 _857_594 | 1 _146.40|
+--------------------+--------------------+--------------------+--------------------+
|Darwin | 112 | 120 _900 | 1 _714.70|
+--------------------+--------------------+--------------------+--------------------+
>>>
Pj4+IGltcG9ydCBjc3Zfbm9ybWFsIGFzIGNzdgo+Pj4geCA9IGNzdi5zdHIyY3N2KCIiIgpDaXR5IG5hbWUsIEFyZWEsIFBvcHVsYXRpb24sIEFubnVhbCBSYWluZmFsbApBZGVsYWlkZSwgMTI5NSwgMTE1ODI1OSwgNjAwLjUKQnJpc2JhbmUsIDU5MDUsIDE4NTc1OTQsIDExNDYuNApEYXJ3aW4sIDExMiwgMTIwOTAwLCAxNzE0LjciIiIpCj4+PiAKPj4+IHgudHJpbSgpICPnqbrjga7ooYzjgIHnqbrjga7liJfjgpLliYrpmaQKPj4+IHguaGVhZGVyX2lkeD0wICPjg5jjg4Pjg4Djg7zjgpLooYzmjIflrpoKPj4+IHguZGF0YV9yb3dfcmFuZ2U9c2xpY2UoMSxOb25lKSAj44OH44O844K/56+E5Zuy44KS6KGM5oyH5a6aCj4+PiAKPj4+IHgucHJpbnQyKCkKKy0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKfENpdHkgbmFtZSB8QXJlYSAgfFBvcHVsYXRpb258QW5udWFsIFJhaW5mYWxsIHwKKy0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKfEFkZWxhaWRlICB8IDFfMjk1fCAxXzE1OF8yNTl8ICAgICAgICAgIDYwMC41MHwKKy0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKfEJyaXNiYW5lICB8IDVfOTA1fCAxXzg1N181OTR8ICAgICAgICAxXzE0Ni40MHwKKy0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKfERhcndpbiAgICB8ICAgMTEyfCAgIDEyMF85MDB8ICAgICAgICAxXzcxNC43MHwKKy0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKPj4+IAo+Pj4gI+ihqOekuuODleOCqeODvOODnuODg+ODiOOBruiqv+aVtOeiuuiqje+8iOODmOODg+ODgOODvOOBr+S4reWkruaPg+OBiOOAgVBvcHVsYXRpb27jga7jg4fjg7zjgr/jgoLkuK3lpK7mj4PjgYjjgIHmloflrZfluYXjga/lhajpg6gyMO+8iQo+Pj4geC5wcmludF9jaGdfZm9ybWF0KGhlYWRlcl9hbGlnbnM9e05vbmU6J14nfSwgYWxpZ25zPXt4WydQb3B1bGF0aW9uJ106J14nfSwgd2lkdGhzPXtOb25lOjIwfSkKICAgICBDaXR5IG5hbWUgICAgICAsICAgICAgICAgQXJlYSAgICAgICAgLCAgICAgIFBvcHVsYXRpb24gICAgICwgICBBbm51YWwgUmFpbmZhbGwgICAKQWRlbGFpZGUgICAgICAgICAgICAsICAgICAgICAgICAgICAgIDFfMjk1LCAgICAgIDFfMTU4XzI1OSAgICAgICwgICAgICAgICAgICAgICA2MDAuNTAKQnJpc2JhbmUgICAgICAgICAgICAsICAgICAgICAgICAgICAgIDVfOTA1LCAgICAgIDFfODU3XzU5NCAgICAgICwgICAgICAgICAgICAgMV8xNDYuNDAKRGFyd2luICAgICAgICAgICAgICAsICAgICAgICAgICAgICAgICAgMTEyLCAgICAgICAxMjBfOTAwICAgICAgICwgICAgICAgICAgICAgMV83MTQuNzAKPj4+IAo+Pj4gI+ihqOekuuODleOCqeODvOODnuODg+ODiOOBruWbuuWumu+8huaeoOS7mOOBkQo+Pj4geSA9IHgud3JhcF9ib3JkZXIoaGVhZGVyX2FsaWducz17Tm9uZTonXid9LCBhbGlnbnM9e3hbJ1BvcHVsYXRpb24nXTonXid9LCB3aWR0aHM9e05vbmU6MjB9KQo+Pj4geS5wcmludCgpCistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCAgICAgQ2l0eSBuYW1lICAgICAgfCAgICAgICAgQXJlYSAgICAgICAgfCAgICAgUG9wdWxhdGlvbiAgICAgfCAgQW5udWFsIFJhaW5mYWxsICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnxBZGVsYWlkZSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAxXzI5NXwgICAgIDFfMTU4XzI1OSAgICAgIHwgICAgICAgICAgICAgIDYwMC41MHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8QnJpc2JhbmUgICAgICAgICAgICB8ICAgICAgICAgICAgICAgNV85MDV8ICAgICAxXzg1N181OTQgICAgICB8ICAgICAgICAgICAgMV8xNDYuNDB8CistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSsKfERhcndpbiAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgMTEyfCAgICAgIDEyMF85MDAgICAgICAgfCAgICAgICAgICAgIDFfNzE0LjcwfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4+PiA=
compilation info
Traceback (most recent call last):
File "/usr/lib/python3.5/py_compile.py", line 125, in compile
_optimize=optimize)
File "<frozen importlib._bootstrap_external>", line 735, in source_to_code
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
File "./prog.py", line 1
>>> import csv_normal as csv
^
SyntaxError: invalid syntax
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python3.5/py_compile.py", line 129, in compile
raise py_exc
py_compile.PyCompileError: File "./prog.py", line 1
>>> import csv_normal as csv
^
SyntaxError: invalid syntax
stdout