Pythonで計算問題の小テストを一瞬で作成する方法を紹介します。
作り方
あらかじめ、Pythonで計算問題を作るプログラムを作成し、保存しておきます。
つぎに、別のPythonファイルを作成し、先に作っておいたファイルを読み込みます。
ファイルを2つ作る理由は、計算問題を扱う複数のPythonファイルをフル活用するためです。
計算問題の内容が変わっても、テストの形式(書式)は変わりません。
計算問題のサンプルを作成する
ここでは前回作成したプログラムをそのままコピーして計算問題のサンプルを作成します。
※ファイルはホームディレクトリに保存します。
import random
a=random.randint(0,9)
b=random.randint(0,9)
o=random.randint(0,9)
p=random.randint(0,9)
q=random.randint(0,9)
r=random.randint(0,9)
s=random.randint(0,9)
t=random.randint(0,9)
c="+"
d="-"
e="("
f=")"
print(e,c,str(a),f,"+",e,c,str(b),f)
print('\n')
print(e,d,str(o),f,"+",e,d,str(p),f)
print('\n')
print(e,c,str(q),f,"+",e,d,str(r),f)
print('\n')
print(e,d,str(s),f,"+",e,c,str(t),f)
ファイルを複数する
先に作ったkeisan1.pyファイルをコピーし、同じファイルを合計で4つ作ります。
次に以下のように名前を変更します。
keisan1.py
keisan2.py
keisan3.py
keisan4.py
ファイルの中身は全く同じです。
※ファイルはホームディレクトリに保存します。
テストを作成する
ここでは先のプログラムを読み出して、テストを作成します。
print('問題1\n')
print('次の問題を解きなさい。\n')
import keisan1
print()
print('\n')
print('問題2\n')
print('次の問題を解きなさい。\n')
import keisan2
print('\n')
print('問題3\n')
print('次の問題を解きなさい。\n')
import keisan3
print('\n')
print('問題4\n')
print('次の問題を解きなさい。\n')
import keisan4
出力結果のサンプル
先のファイルを実行すると、以下のように出力されます。
問題1
次の問題を解きなさい。
( + 6 ) + ( + 7 )
( - 6 ) + ( - 6 )
( + 8 ) + ( - 0 )
( - 3 ) + ( + 1 )
問題2
次の問題を解きなさい。
( + 2 ) + ( + 0 )
( - 2 ) + ( - 3 )
( + 3 ) + ( - 2 )
( - 0 ) + ( + 3 )
問題3
次の問題を解きなさい。
( + 1 ) + ( + 9 )
( - 9 ) + ( - 1 )
( + 1 ) + ( - 3 )
( - 7 ) + ( + 9 )
問題4
次の問題を解きなさい。
( + 7 ) + ( + 5 )
( - 7 ) + ( - 1 )
( + 9 ) + ( - 6 )
( - 9 ) + ( + 6 )
別の小テスト問題を作成する
別のテスト問題のファイルを作成することで、新しい小テストを作成することができます。
コードはこちら。
Pythonで正負の数 (減法)の問題を自動作成する方法 - Qiita https://qiita.com/akiba_burari/items/3948eef74dd9f9b100ba
pythonファイルを作成したら、
test-mondai.pyの中にあるファイル名を書き換えてください。
import ファイル名
参考
【Python】別の.pyファイルを呼び出して実行する方法とその意義 - ゆんの業務改善ブログ https://www.mutable.work/entry/import-other-scripts
関連記事
Pythonで正負の数 (加法)の問題を自動作成する方法 - Qiita https://qiita.com/akiba_burari/items/777dec85e9fcd59d1f49
【超基礎編】Pythonで中学 数学の問題を自動作成する方法 - Qiita https://qiita.com/akiba_burari/items/f8a11cf0533b889e0af3