Python総合学習【応用編】

関数
2つ引数を乗算する関数です。
ソース
#coding: shift_jis
def SampleFunc(A, B):
return A * B
X = 2
Y = 3
Z = SampleFunc(X, Y)
print(Z)
input()
関数SampleFuncを定義し、関数を呼ぶサンプルです。
ファイル操作
ファイルの存在有無による処理分岐です。
ソース
#coding: shift_jis
import os
if os.path.exists("テキスト.txt") :
os.remove("テキスト.txt")
else :
print("ファイルが存在しません。")
input()
importモジュールを使用、os.path.exists(“テキスト.txt”)が存在したら、テキスト.txtファイルを削除します。ファイルが存在しなければ、”ファイルが存在しません。”と表示します。
ファイル入出力
”入力.txt”というテキストファイルを読み込み、”出力.txt”というテキストファイルに出力する処理です。
ソース
#coding: shift_jis
Rf = open(".\\入力.txt")
Wf = open(".\\出力.txt", "w")
for line in Rf :
Wf.write(line)
Rf.close()
Wf.close()
input()
説明
open(ファイル名,入出力モード)で、入出力モードに従ってファイル名を処理します。
入出力モード
”r” : 読み取り専用モード
”w” : 上書きモードモードを設定して、ファイルを開きます。
for 変数 in オブジェクト
入出力モード
”r” : 読み取り専用モード
”w” : 上書きモード
ループルで、ファイルから1行ずつ取得します。
オブジェクト.write(文字列)
指定した文字列を書き込みます。
オブジェクト.close()
ファイルを閉じます。
外部プログラム実行
外部プログラムの実行処理について解説します。
ソース
#coding: shift_jis
import subprocess
subprocess.run("notepad.exe")
input()
subprocess.run()で、シェルを実行します。
メイン.py
#coding: shift_jis
import subprocess
subprocess.run("py サブ.py aaa bbb")
input()
サブ.py
#coding: shift_jis
import sys
print("引数1:" + sys.argv[1])
print("引数2:" + sys.argv[2])
subprocess.run(py [スクリプトファイル名] [引数…])
スクリプトファイルを呼び出します。
sys.argv(0)
引数を参照します。
例外処理
例外処理について解説します。
ソース
#coding: shift_jis
try:
X = 1 / 0
print("正常")
except:
print("失敗")
finally:
input()
try:
例外が発生する可能性がある処理
except:
例外発生時の処理
finally:
最後に必ず実行する処理
例外処理を定義します。