のようにして textedit で .cshrc を開き,% cd % textedit .cshrc &
という行を最後に追加し, ファイルを保存してください. 次にコマンドツールを起動したときから, Python が使えるようになります.set path = (/pub/solaris/python/bin $path)
コマンドツールから python と入力すると, 上のように表示されます. >>> は Python のプロンプトです. プロンプトに続けて入力すると いろいろな計算やプログラムの実行をやらせることができます. 下はその例です. 太文字のところを入力してください. (入力に 続けて Return を忘れずに)% python Python 2.0 (#2, Oct 3 2001, 16:06:22) [GCC 2.8.1] on sunos5 Type "copyright", "credits" or "license" for more information. >>>
このように, インタプリタ言語では, インタラクティブに計算を実行させることが できます. しかし, ここではより進んだやりかたである, プログラムの作成を 練習します.>>> a = 12345 >>> b = 678 >>> a 12345 >>> b 678 >>> a + b 13023 >>>
上のようにして, ~/core-info/python ディレクトリを作成し, その中で作業します.% cd ~/core-info % mkdir python % cd python
test1.py の中身は以下のようにします.% textedit test1.py &
注意: 行の頭に空白があるところは, 半角の空白を使って正確に頭下げを行ってください.
#!/bin/env python # 専門コア情報処理演習教材 test1.py, 2002 # は注釈文です。 def test1(a,b): print '実行' print ' a = %d' % a print ' b = %d' % b print 'a + b = %d' % (a + b) print 'a - b = %d' % (a - b) print 'a * b = %d' % (a * b) if b != 0: print 'a / b = %d 余り %d' % (a / b, a % b) def testtest(): print '四則演算のサンプルプログラムです。' print 'ふたつの整数 a,b を入力してください。' a = input('a = ') b = input('b = ') test1(a,b) if __name__ == '__main__': testtest()
python を起動して, プログラムを実行します.
[CTL]+Dで一旦 python を終了させます. シェルスクリプトのところで やったように, test1.py に実行権を与えます.% python Python 2.0 (#2, Oct 3 2001, 16:06:22) [GCC 2.8.1] on sunos5 Type "copyright", "credits" or "license" for more information. >>> from test1 import * >>> test1(12345, 678) 実行 a = 12345 b = 678 a + b = 13023 a - b = 11667 a * b = 8369910 a / b = 18 余り 141 >>> testtest() 四則演算のサンプルプログラムです。 ふたつの整数 a,b を入力してください。 a = 1234 b = 5678 実行 a = 1234 b = 5678 a + b = 6912 a - b = -4444 a * b = 7006652 a / b = 0 余り 1234 >>>
イ組を真似て 処理できない数字を入れるとどうなるかも試してみましょう.% chmod +x test1.py % ls -l test1.py ( x が付いていることを確認) % ./test1.py 四則演算のサンプルプログラムです。 ふたつの整数 a,b を入力してください。 a = 12345 b = 678 実行 ...
次のプログラムも同様に試してみよう.
#!/bin/env python # 専門コア情報処理演習教材 test2.py, 2002 def test2(a,b): print '実行' print ' a = %g' % a print ' b = %g' % b print 'a + b = %g' % (a + b) print 'a - b = %g' % (a - b) print 'a * b = %g' % (a * b) if b != 0.0: print 'a / b = %g' % (a / b) def testtest(): print '四則演算のサンプルプログラムです。' print 'ふたつの実数 a,b を入力してください。' a = input('a = ') b = input('b = ') test2(a,b) if __name__ == '__main__': testtest()
#!/bin/env python # 専門コア情報処理演習教材 test3.py def gcd(m, n): if n == 0: g = m u = 1 v = 0 else: q = m / n r = m - q * n (g, u0, v0) = gcd(n, r) u = v0 v = u0 - q * v0 return (g, u, v) def testgcd(): print '最大公約数のサンプルプログラムです。' print 'ふたつの自然数を入力してください。' a = input('a = ') b = input('b = ') print '実行 :' (d, x, y) = gcd(a, b) print 'a = %d' % a print 'b = %d' % b print 'gcd(a,b) = %d' % d, print ' = %d * ( %d ) + %d * ( %d )' % (a, x, b, y) if __name__ == '__main__': testgcd()