2017-10-29 4 views
-1
from roles import Herbalist, Warrior 

def makeRolesAct(listOfTheRoles): 
    y = 0 
    for role in listOfTheRoles: 
     print("Role", y, role.describe()) 
     print(role.act()) 
     y+=1 

def main(): 
    listOfTheRoles = [] 
    listOfTheRoles.extend([Warrior('axe', 'dragon'), Herbalist(), Warrior('hammer', 'horse')]) 

    for x in range(5): 
     makeRolesAct(listOfTheRoles) 

if __name__ == '__main__': 
    main() 

describe()は、現在のアクターの役割を表します。 act()は俳優に自分の行動をさせる。ランダムリスト要素で関数を実行する

makeRolesAct()をランダムなlistOfTheRoles要素で実行したいと思います。 私はループ内で関数を持っていれば、無作為に選ばれたアクターに対して繰り返されるアクションで繰り返されます。

+0

ようこそ。残念ながら、これはディスカッションフォーラム、チュートリアルまたはコード作成サービスではありません。時間をかけて[ask]とそれに含まれるリンクを読んでください。例を練習して[チュートリアル](https://docs.python.org/3/tutorial/index.html)を試してみてください。 Pythonが提供するツールについて紹介し、問題解決のためのアイデアを得ることさえできます。 – wwii

+0

['random'](https://docs.python.org/3/library/random.html)モジュールを見ましたか?そこにはたくさんのものがあります。 –

答えて

1

randomモジュールを使用できます。

... 
import random 
... 

def makeRolesAct(): 
     role=listOfTheRoles[random.randint(0,4)] 
     print("Role", role.describe()) 
     print(role.act()) 
... 
... 

あなたのコードは上記のようにすることができます。

+1

'random.choice'はここでより良い選択になります... –

+0

それはまた動作します。 – Darthenn