開発環境
開発環境
- macOS Mojave - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Python 3.7 (プログラミング言語)
プログラミング素人さんのブログの記事、競技プログラミングの基本入出力の出力編について。
文字列でない場合は変換します。とあるけど、文字列のリスト数値のリストでも(あるいは他の型のリストでも、各要素の型が違う場合でも)同じようかけるような方法のコードを書いてみた。
コード
Python 3
#!/usr/bin/env python3 strs = ["6", "5", "6", "8"] nums = [6, 5, 6, 8] lst = ["6", 5, "6", 8] for o in [strs, nums, lst]: print(*o)
入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))
C:\Users\...>py sample.py 6 5 6 8 6 5 6 8 6 5 6 8 C:\Users\...>
ちょっとだけコードの説明。
print(*["6", 5, "6", 8])は
print("6", 5, "6", 8)と同じ。
ということで、アスタリスク「*」による関数引数のunpackを使えば、文字列とか数値とか気にせず、同じコードの書き方でリストの要素をスペース区切りで出力することが出来る。ということで、どちらがPythonらしい方法なのか、読みやすいか、あるいは理解しやすいかちょっと気になったり。
0 コメント:
コメントを投稿