ソースコード
import random
def make_randint_list( min , max , cnt, sortflag = False , revflag = False ):
list = []
i = 0
while cnt ! = i:
r = random.randint( min , max )
try :
list .index(r)
except ValueError, e:
list .append(r)
i = i + 1
if (sortflag): list .sort(reverse = revflag)
return list
def _main():
print 'makerand0.py [_main()]'
print make_randint_list( 10 , 99 , 10 )
print make_randint_list( 10 , 99 , 10 , True )
print make_randint_list( 10 , 99 , 10 , True , True )
if __name__ = = '__main__' : _main()
|
モジュール変数__name__の中には通常はモジュール名が入っています。しかし、このモジュールファイルを直接実行した場合は__name__に’__main__’という名前が入ります。その為、if __name__ == ‘__main__’ : は真となり_main()が実行されます。
実行結果
$ python makerand0.py
makerand0.py [_main()]
[62, 18, 55, 44, 97, 67, 87, 16, 59, 43]
[11, 13, 30, 42, 46, 52, 71, 75, 81, 92]
[88, 81, 65, 60, 57, 53, 41, 34, 27, 23]
モジュールテスト用スクリプト
makerand0_test.py
from makerand import make_randint_list
print make_randint_list( 10 , 99 , 10 )
print make_randint_list( 10 , 99 , 10 , True )
print make_randint_list( 10 , 99 , 10 , True , True )
|
実行結果
$ python makerand0_test.py
[52, 44, 63, 61, 50, 66, 88, 45, 99, 57]
[15, 26, 29, 53, 56, 69, 89, 91, 94, 95]
[96, 95, 93, 88, 79, 75, 64, 62, 33, 11]
リファレンス
チュートリアル