SlideShare a Scribd company logo
Python演習
1. はじめに
PythonとFortranの比較
• Fortranは
• 各種計算(特に行列、ベクトル)が高速
• 数値計算のライブラリが充実
• 事前に明示的なコンパイルが必要
• →計算プログラムの作成に適している
• Pythonは
• 汎用的な言語(何でもできるが計算は遅い)
• 特に文字列の処理がFortranに比べ容易
• 事前のコンパイルを必要としない
• →入力の整形や解析プログラムの作成に適している
2016/5/4現在の最新版
• Pythonは2系と3系が共存
• Python2の最新版→2.7.11
• Python3の最新版→3.5.1
• この演習では3系に準拠します
• 事前にパスを通しておいてください
実行方法
• 1. ファイル(file)に作成したプログラムを実行
• コマンド: python3 some_program.py
• 何回も使うプログラムに向く
• 2. ターミナル(REPL)上で直接実行
• コマンド: python3
• 実行すると>>>と表示→プログラムを入力
• 返り値のある式を実行するとそれが表示される
• ライブラリなどの確認に使う
• この演習では主に2の方法を用います
• 実用上は1が重要なので両方使ってみてください。
• 演習でfile(REPL)とある→1(2)を使って下さい
演習1―Hello, World (file, REPL)
• 以下の内容をtest01.pyに記述してください
• print("Hello, World")
• python3 test01.pyとコマンドを入力して下さい
• Hello, Worldと表示されるはず
• python3とコマンドを実行して下さい
• >>>と表示される
• print("Hello, World")と入力して下さい
• Hello, Worldと表示されるはず
凡例
• このテキストでの書き方
• コメント及び何かの値は「#」に続けて書きます
• x = "Hello, World!" # xに"Hello, World!"を代入
• "Show some value" # "Show some value"
• 出力を記述する場合は「# =>」に続けて書きます
• print("Hello, World") # => Hello, World!
• print(1 + 2) # => 3
• 必要に応じて変える値(変数など)は斜体で書きます
• print(str) # strは必要に応じて書き換える
• str.rstrip() # メソッドのレシーバは斜体
• 書き換えない値(パッケージなど)は立体で書きます
• re.compile("¥d+") # reは正規表現のパッケージ
文法1―書き始め
• いきなり書き始め、いきなり終わる
• program ~ end programは必要ない
• 変数の宣言もしない(変数は自動的に宣言される)
• 画面への出力
• print(出力したいもの)
• 配列などの表示も可能
• 例: print("Hello, World")
• コメント
• コメントは#から行末まで
• 複数行コメントは'''~'''または"""~"""
• 例: print("Hello, World") # Comment
文法2―変数
• 変数
• Fortranと同様に変数が使用できる
• 宣言は不要で、変数に型がない(数値も文字列もOK)
• 但し値には型(クラス)がある(int, float, complex, …)
• 代入と参照
• 代入は「変数 = 式」の形で使用
• 左辺を省略して式の値を捨てることも可能
• 参照は必要な場所で変数を書けばよい
• 例: x = 1
• コレクション(配列)への代入と参照
• 添字は[]で書く(Fortranは())
• 添字は0から始まるので注意
値(変数に代入できるもの)の例
• 数値
• 整数(int) 2, -1など小数点を持たない数
• 実数(float) 3.14など小数点を持つ数
• 複素数(complex) 1+2jなど虚数単位jを持つ数
• 文字列
• 文字列(str) 'test'など(''や""で囲む)
• コレクション(データの集まり≒配列)
• リスト(list) [1.0, 2.0]など(要素や大きさが可変)
• タプル(tuple) ('May', '1')など(要素や大きさが不変)
• 辞書(dict) {'key': 'value'}など(keyとvalueの対応)
文法3―関数とメソッドの使用
• 関数の呼び出し
• function(arg1, arg2, …)で関数を呼び出す
• 例: n = len("one") # len(str)はstrの長さを返す関数
• パッケージ関数
• 関数の多くは「パッケージ」内で定義されている
• import packageでpackageを使用可能にして
• package.function(arg1, arg2, …)で使用する
• 例: pi = 4.0 * math.atan(1.0) # piに4 * tan-1(1)を代入
• メソッド
• 特定の値(オブジェクト)を操作する関数
• obj.method(arg1, arg2, …)で使用する
• 例: "capital".upper() # "capital"を全て大文字にする
文法4―ブロック
• ブロックはインデントで指定
• ifやwhileのブロックはインデント(4スペース推奨)
• ブロックが終了したらインデントを戻す
• ブロックで何もしない場合はpassを使う
• 例(回文数を数える)
n = 0 # カウンタの初期化
for i in range(1, 10000): # 1から10000までループ
˽˽˽˽if str(i) == str(i)[::-1]: # 反転しても同じなら
˽˽˽˽˽˽˽˽n += 1 # 回文数ならnを1増やす
˽˽˽˽else: # 違えば
˽˽˽˽˽˽˽˽pass # 何もしない
print(n) # => 198
制御構文
• 条件分岐とループ
• if cond: condが真ならばブロックを実行
• while cond: condが真の間ブロックをループ
• for var in iter: iterの各要素でブロックをループ
• 関数
• def hoge(vars): 関数定義
• lambda vars: ラムダ式(無名関数)の定義
文法5―複数行
• 途中改行
• 途中改行はバックスラッシュ(Windowsでは¥)
• function_with_tooooooooooooooo_long name(¥
arguments)
• マルチステートメント(複数行を一行に)
• x = 1; y = 2のようにセミコロンで区切る
• 一行if
• if cond: stmtとコロンの後ろに続けて書く
• 例: if 1 < 2: print('True')
• 多重代入(複数の変数に一度に代入)
• 「変数, 変数, … = 式, 式, …」とすると一度に代入
演習2―変数と出力(REPL)
1. 変数oneに1を代入して下さい
2. 変数piに3.14を代入して下さい
3. 変数textに"text"を代入して下さい
4. 変数north,eastに35.7,139.7を代入して下さい
ただし1行で記述して下さい
5. one,pi,text,north,eastの値を表示して下さい
ここからは次回以降の
内容を簡単に紹介します。
研究におけるPythonの
運用を説明します。
想定ユースケース
• ログ解析
• 量子化学計算などで得られたデータの処理
• →人間用のログファイルからデータを抽出、加工
• 解析例
• 以下のファイルを開いて励起エネルギーを計算
• 出力はeV単位で行う
• 抽出の時は関係ないデータを拾わないように注意
• 計算結果の例
• Molpro2012のログファイルより抜粋
!MCSCF STATE 1.1 Energy -77.591982080137
(省略)
!MCSCF STATE 2.1 Energy -77.213738400957
例―MCSCFのエネルギー
import sys # 標準入力の読込準備
for l in sys.stdin(): # 標準入力を1行づつlに代入
if not ('MCSCF' in l ¥ # lの中にMCSCFと
and 'Energy' in l): # Energyがなければ
continue # 次の行へ
token = l.rstrip().split() # lを改行除去し空白で分割
state = token[2] # 準位は第2トークン
energy = token[4] # エネルギーは第4トークン
print(state, energy) # 準位とエネルギーを出力
解析の流れ
1. ファイルを一行づつ読み込み
2. 必要な行を抽出
3. 必要な列を抽出
4. 抽出した
データを
変換
5. 出力
1. ファイルから1行づつ読み込む
• for l in sys.stdin:
• lに標準入力の内容を1行づつ代入してループ
• リダイレクト(「<」)を使うとファイルを開ける
• 読み込んだ行には改行が付いている
• l.rstrip()
• lのコピーを作ってから改行をはがして返す
• l自体の改行を削るには「l = l.rstrip()」
• 例(cat: ファイルをそのまま表示)
for l in fileinput.input(): # ファイルを1行づつ
print(l.rstrip()) # 改行削除し1行表示
2. 必要な行を抽出
• if 'keyword' in l:
• keywordがlの中にあればブロックを実行する
• pythonのブロックはインデント(endifは不要)
• and, or, not
• "keyword" in lは単に条件を指示している
• →and, or, notで「かつ、または、でない」を表せる
• continue
• その外側の(for)ループから抜ける
• 例(キーワード検索)
for l in sys.stdin:
if 'Energy' in l:
print(l.rstrip())
3. 必要な列を抽出
• l.rstrip().split()
• l.rstrip()はlの末尾の改行除去、.split()が分割
• 分割された文字列のリスト(配列)ができる
• リストの先頭は「0番」なので注意!
• また、リストの参照は「list[i]」で行う
• 例(1列目だけ表示)
for l in sys.stdin:
token = l.rstrip().split()
print(token[0])
4. 抽出したデータを変換
• ここが解析プログラムの本体です
• 変換の方法は目的によっていろいろあります
• データを見やすくする
• データの簡単な計算を行う
• …
• しかし、「定石」が存在しません
• そのため、様々な機能を知る必要があります
• 今後の演習で「道具」を紹介していきます
• 目次
• 第1回: 初めに
• 第2回: 数値計算と文字列、正規表現
• 第3回: コレクション(リスト、タプル、辞書)
• 第4回: 制御構文とパッケージ
5. 出力
• 画面への出力
• print(出力したいもの)
• 配列などの表示も可能です
• 例(cat: ファイルをそのまま表示)
for l in fileinput.input(): # ファイルを1行づつ
print(l.rstrip()) # 改行削除し1行表示
参考
• 公式サイト
• トップページ
• http://www.python.jp/
• チュートリアル
• http://docs.python.jp/3/tutorial/index.html
• ライブラリリファレンス
• http://docs.python.jp/3/library/index.html
• 書籍
• 入門Python3(Bill Lubanovic et al., O'reilly, 2015)
• 実践Python3(Mark Summerfield et al., O'reilly, 2015)
• Molpro
• http://www.molpro.net

More Related Content

PDF
Constexprとtemplateでコンパイル時にfizz buzz
PDF
リテラル文字列型までの道
PDF
xv6から始めるSPIN入門
PDF
Rpn and forth 超入門
PDF
Effective Modern C++ 勉強会#3 Item 15
PDF
お手軽 OpenFlow Traceroute
PPT
Glibc malloc internal
PDF
謎の言語Forthが謎なので実装した
Constexprとtemplateでコンパイル時にfizz buzz
リテラル文字列型までの道
xv6から始めるSPIN入門
Rpn and forth 超入門
Effective Modern C++ 勉強会#3 Item 15
お手軽 OpenFlow Traceroute
Glibc malloc internal
謎の言語Forthが謎なので実装した

What's hot (18)

PDF
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
PPTX
Sharing Deep Dive
PPTX
高度に最適化された移植可能なメモリマネージャ
PDF
Javaで作る超簡易x86エミュレータ
PPT
Altanative macro
PPT
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
PDF
Ruby&Active Support for expert 3
PDF
Inside FastEnum
PPTX
基礎構文班 11回目 ファイル入出力 型変換 問題やる回
PPTX
コードで感じるKotlin入門
PPTX
ループその3
PDF
d-kami x86-1
PDF
続・SECDマシン
PDF
Pythonの非同期処理を始める前に
PDF
Pythonが動く仕組み(の概要)
PDF
Constexpr 中3女子テクニック
PPTX
Tremaとtrema edgeの違い
PDF
【学習メモ#5th】12ステップで作る組込みOS自作入門
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
Sharing Deep Dive
高度に最適化された移植可能なメモリマネージャ
Javaで作る超簡易x86エミュレータ
Altanative macro
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ruby&Active Support for expert 3
Inside FastEnum
基礎構文班 11回目 ファイル入出力 型変換 問題やる回
コードで感じるKotlin入門
ループその3
d-kami x86-1
続・SECDマシン
Pythonの非同期処理を始める前に
Pythonが動く仕組み(の概要)
Constexpr 中3女子テクニック
Tremaとtrema edgeの違い
【学習メモ#5th】12ステップで作る組込みOS自作入門
Ad

Viewers also liked (20)

PDF
WindowsでPython
PDF
Python 機械学習プログラミング データ分析ライブラリー解説編
PDF
Python 機械学習プログラミング データ分析演習編
PDF
「Python言語」はじめの一歩 / First step of Python
PDF
S03 t1 python_learningdiary#3
PDF
S03 t0 get_started
PDF
Python3 プログラミング勉強会
PDF
Outside and inside of PyCon JP 2016
PPTX
Python 機械学習入門
PDF
Python & PyConJP 2014 Report
PDF
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
PPTX
GmailとPythonでイベント管理
PDF
Pythonデータ分析 第4回勉強会資料 12章
PDF
実践・最強最速のアルゴリズム勉強会 第三回講義資料(ワークスアプリケーションズ & AtCoder)
PDF
実践・最強最速のアルゴリズム勉強会 第二回講義資料(ワークスアプリケーションズ & AtCoder)
PDF
アルゴリズムのお勉強 アルゴリズムとデータ構造 [素数・文字列探索・簡単なソート]
PDF
ソーティングと貪欲法
PDF
ネットワーク概論 サーバの構築理論
PDF
計算量とオーダー
WindowsでPython
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析演習編
「Python言語」はじめの一歩 / First step of Python
S03 t1 python_learningdiary#3
S03 t0 get_started
Python3 プログラミング勉強会
Outside and inside of PyCon JP 2016
Python 機械学習入門
Python & PyConJP 2014 Report
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
GmailとPythonでイベント管理
Pythonデータ分析 第4回勉強会資料 12章
実践・最強最速のアルゴリズム勉強会 第三回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第二回講義資料(ワークスアプリケーションズ & AtCoder)
アルゴリズムのお勉強 アルゴリズムとデータ構造 [素数・文字列探索・簡単なソート]
ソーティングと貪欲法
ネットワーク概論 サーバの構築理論
計算量とオーダー
Ad

Similar to Python勉強会1-はじめに (20)

PPTX
Polyphony の並列化
PDF
シェル芸初心者によるシェル芸入門 (修正版)
PPTX
20130228 Goノススメ(BPStudy #66)
PDF
JavaScript 講習会 #1
PDF
JDK 10 へようこそ
PPTX
20130316 プログラミング言語Go
PDF
第1回勉強会スライド
PDF
明日から使える気になるGo言語による並行処理
PDF
C言語講習会2
PDF
Effective Modern C++ 勉強会 Item26
PDF
Clojure
PDF
第1回python勉強会
PDF
第2回勉強会スライド
PDF
Python勉強会4-制御構文とパッケージ
PDF
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第6回 ‟文字列とオブジェクト„
PDF
C#勉強会
PDF
Javaセキュアコーディングセミナー東京第3回講義
PDF
Mono is Dead
PDF
研究生のためのC++ no.2
PDF
Subprocess no susume
Polyphony の並列化
シェル芸初心者によるシェル芸入門 (修正版)
20130228 Goノススメ(BPStudy #66)
JavaScript 講習会 #1
JDK 10 へようこそ
20130316 プログラミング言語Go
第1回勉強会スライド
明日から使える気になるGo言語による並行処理
C言語講習会2
Effective Modern C++ 勉強会 Item26
Clojure
第1回python勉強会
第2回勉強会スライド
Python勉強会4-制御構文とパッケージ
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第6回 ‟文字列とオブジェクト„
C#勉強会
Javaセキュアコーディングセミナー東京第3回講義
Mono is Dead
研究生のためのC++ no.2
Subprocess no susume

Python勉強会1-はじめに

  • 2. PythonとFortranの比較 • Fortranは • 各種計算(特に行列、ベクトル)が高速 • 数値計算のライブラリが充実 • 事前に明示的なコンパイルが必要 • →計算プログラムの作成に適している • Pythonは • 汎用的な言語(何でもできるが計算は遅い) • 特に文字列の処理がFortranに比べ容易 • 事前のコンパイルを必要としない • →入力の整形や解析プログラムの作成に適している
  • 3. 2016/5/4現在の最新版 • Pythonは2系と3系が共存 • Python2の最新版→2.7.11 • Python3の最新版→3.5.1 • この演習では3系に準拠します • 事前にパスを通しておいてください
  • 4. 実行方法 • 1. ファイル(file)に作成したプログラムを実行 • コマンド: python3 some_program.py • 何回も使うプログラムに向く • 2. ターミナル(REPL)上で直接実行 • コマンド: python3 • 実行すると>>>と表示→プログラムを入力 • 返り値のある式を実行するとそれが表示される • ライブラリなどの確認に使う • この演習では主に2の方法を用います • 実用上は1が重要なので両方使ってみてください。 • 演習でfile(REPL)とある→1(2)を使って下さい
  • 5. 演習1―Hello, World (file, REPL) • 以下の内容をtest01.pyに記述してください • print("Hello, World") • python3 test01.pyとコマンドを入力して下さい • Hello, Worldと表示されるはず • python3とコマンドを実行して下さい • >>>と表示される • print("Hello, World")と入力して下さい • Hello, Worldと表示されるはず
  • 6. 凡例 • このテキストでの書き方 • コメント及び何かの値は「#」に続けて書きます • x = "Hello, World!" # xに"Hello, World!"を代入 • "Show some value" # "Show some value" • 出力を記述する場合は「# =>」に続けて書きます • print("Hello, World") # => Hello, World! • print(1 + 2) # => 3 • 必要に応じて変える値(変数など)は斜体で書きます • print(str) # strは必要に応じて書き換える • str.rstrip() # メソッドのレシーバは斜体 • 書き換えない値(パッケージなど)は立体で書きます • re.compile("¥d+") # reは正規表現のパッケージ
  • 7. 文法1―書き始め • いきなり書き始め、いきなり終わる • program ~ end programは必要ない • 変数の宣言もしない(変数は自動的に宣言される) • 画面への出力 • print(出力したいもの) • 配列などの表示も可能 • 例: print("Hello, World") • コメント • コメントは#から行末まで • 複数行コメントは'''~'''または"""~""" • 例: print("Hello, World") # Comment
  • 8. 文法2―変数 • 変数 • Fortranと同様に変数が使用できる • 宣言は不要で、変数に型がない(数値も文字列もOK) • 但し値には型(クラス)がある(int, float, complex, …) • 代入と参照 • 代入は「変数 = 式」の形で使用 • 左辺を省略して式の値を捨てることも可能 • 参照は必要な場所で変数を書けばよい • 例: x = 1 • コレクション(配列)への代入と参照 • 添字は[]で書く(Fortranは()) • 添字は0から始まるので注意
  • 9. 値(変数に代入できるもの)の例 • 数値 • 整数(int) 2, -1など小数点を持たない数 • 実数(float) 3.14など小数点を持つ数 • 複素数(complex) 1+2jなど虚数単位jを持つ数 • 文字列 • 文字列(str) 'test'など(''や""で囲む) • コレクション(データの集まり≒配列) • リスト(list) [1.0, 2.0]など(要素や大きさが可変) • タプル(tuple) ('May', '1')など(要素や大きさが不変) • 辞書(dict) {'key': 'value'}など(keyとvalueの対応)
  • 10. 文法3―関数とメソッドの使用 • 関数の呼び出し • function(arg1, arg2, …)で関数を呼び出す • 例: n = len("one") # len(str)はstrの長さを返す関数 • パッケージ関数 • 関数の多くは「パッケージ」内で定義されている • import packageでpackageを使用可能にして • package.function(arg1, arg2, …)で使用する • 例: pi = 4.0 * math.atan(1.0) # piに4 * tan-1(1)を代入 • メソッド • 特定の値(オブジェクト)を操作する関数 • obj.method(arg1, arg2, …)で使用する • 例: "capital".upper() # "capital"を全て大文字にする
  • 11. 文法4―ブロック • ブロックはインデントで指定 • ifやwhileのブロックはインデント(4スペース推奨) • ブロックが終了したらインデントを戻す • ブロックで何もしない場合はpassを使う • 例(回文数を数える) n = 0 # カウンタの初期化 for i in range(1, 10000): # 1から10000までループ ˽˽˽˽if str(i) == str(i)[::-1]: # 反転しても同じなら ˽˽˽˽˽˽˽˽n += 1 # 回文数ならnを1増やす ˽˽˽˽else: # 違えば ˽˽˽˽˽˽˽˽pass # 何もしない print(n) # => 198
  • 12. 制御構文 • 条件分岐とループ • if cond: condが真ならばブロックを実行 • while cond: condが真の間ブロックをループ • for var in iter: iterの各要素でブロックをループ • 関数 • def hoge(vars): 関数定義 • lambda vars: ラムダ式(無名関数)の定義
  • 13. 文法5―複数行 • 途中改行 • 途中改行はバックスラッシュ(Windowsでは¥) • function_with_tooooooooooooooo_long name(¥ arguments) • マルチステートメント(複数行を一行に) • x = 1; y = 2のようにセミコロンで区切る • 一行if • if cond: stmtとコロンの後ろに続けて書く • 例: if 1 < 2: print('True') • 多重代入(複数の変数に一度に代入) • 「変数, 変数, … = 式, 式, …」とすると一度に代入
  • 14. 演習2―変数と出力(REPL) 1. 変数oneに1を代入して下さい 2. 変数piに3.14を代入して下さい 3. 変数textに"text"を代入して下さい 4. 変数north,eastに35.7,139.7を代入して下さい ただし1行で記述して下さい 5. one,pi,text,north,eastの値を表示して下さい
  • 16. 想定ユースケース • ログ解析 • 量子化学計算などで得られたデータの処理 • →人間用のログファイルからデータを抽出、加工 • 解析例 • 以下のファイルを開いて励起エネルギーを計算 • 出力はeV単位で行う • 抽出の時は関係ないデータを拾わないように注意 • 計算結果の例 • Molpro2012のログファイルより抜粋 !MCSCF STATE 1.1 Energy -77.591982080137 (省略) !MCSCF STATE 2.1 Energy -77.213738400957
  • 17. 例―MCSCFのエネルギー import sys # 標準入力の読込準備 for l in sys.stdin(): # 標準入力を1行づつlに代入 if not ('MCSCF' in l ¥ # lの中にMCSCFと and 'Energy' in l): # Energyがなければ continue # 次の行へ token = l.rstrip().split() # lを改行除去し空白で分割 state = token[2] # 準位は第2トークン energy = token[4] # エネルギーは第4トークン print(state, energy) # 準位とエネルギーを出力
  • 18. 解析の流れ 1. ファイルを一行づつ読み込み 2. 必要な行を抽出 3. 必要な列を抽出 4. 抽出した データを 変換 5. 出力
  • 19. 1. ファイルから1行づつ読み込む • for l in sys.stdin: • lに標準入力の内容を1行づつ代入してループ • リダイレクト(「<」)を使うとファイルを開ける • 読み込んだ行には改行が付いている • l.rstrip() • lのコピーを作ってから改行をはがして返す • l自体の改行を削るには「l = l.rstrip()」 • 例(cat: ファイルをそのまま表示) for l in fileinput.input(): # ファイルを1行づつ print(l.rstrip()) # 改行削除し1行表示
  • 20. 2. 必要な行を抽出 • if 'keyword' in l: • keywordがlの中にあればブロックを実行する • pythonのブロックはインデント(endifは不要) • and, or, not • "keyword" in lは単に条件を指示している • →and, or, notで「かつ、または、でない」を表せる • continue • その外側の(for)ループから抜ける • 例(キーワード検索) for l in sys.stdin: if 'Energy' in l: print(l.rstrip())
  • 21. 3. 必要な列を抽出 • l.rstrip().split() • l.rstrip()はlの末尾の改行除去、.split()が分割 • 分割された文字列のリスト(配列)ができる • リストの先頭は「0番」なので注意! • また、リストの参照は「list[i]」で行う • 例(1列目だけ表示) for l in sys.stdin: token = l.rstrip().split() print(token[0])
  • 22. 4. 抽出したデータを変換 • ここが解析プログラムの本体です • 変換の方法は目的によっていろいろあります • データを見やすくする • データの簡単な計算を行う • … • しかし、「定石」が存在しません • そのため、様々な機能を知る必要があります • 今後の演習で「道具」を紹介していきます • 目次 • 第1回: 初めに • 第2回: 数値計算と文字列、正規表現 • 第3回: コレクション(リスト、タプル、辞書) • 第4回: 制御構文とパッケージ
  • 23. 5. 出力 • 画面への出力 • print(出力したいもの) • 配列などの表示も可能です • 例(cat: ファイルをそのまま表示) for l in fileinput.input(): # ファイルを1行づつ print(l.rstrip()) # 改行削除し1行表示
  • 24. 参考 • 公式サイト • トップページ • http://www.python.jp/ • チュートリアル • http://docs.python.jp/3/tutorial/index.html • ライブラリリファレンス • http://docs.python.jp/3/library/index.html • 書籍 • 入門Python3(Bill Lubanovic et al., O'reilly, 2015) • 実践Python3(Mark Summerfield et al., O'reilly, 2015) • Molpro • http://www.molpro.net