アットウィキロゴ

クラス もの

import numpy as np
 
class mono:
 
    def makedata(self):   
 
        self.a[self.mode]=self.a[self.mode]+self.dice()
        if self.a[self.mode]>40:
           self.a[self.mode]=self.a[self.mode]-40
           self.m[self.mode]=self.m[self.mode]+200 
        self.sell(self.mode,self.a[self.mode])
        self.buy(self.mode,self.a[self.mode])
        self.mode=self.mode+1
        if self.mode>3:
           self.mode=0
 
 
    def dice(self):
        d=[1,2,3,4,5,6]
        d1=np.random.choice(d)
        d2=np.random.choice(d)
        return d1+d2
 
    def sell(self,m1,x1):
 
        se=[2,4,7,9,10,12,14,15,17,19,20,22,24,25,27,28,30,32,33,35,38,40]
 
        for b1 in se: 
            if x1==b1:
               self.subsell(m1,x1)
 
    def subsell(self,m1,x1):
 
        q=self.x[x1]
        if q>0:
           self.m[m1]=self.m[m1]-self.rent[x1]
           self.m[q]=self.m[q]+self.rent[x1]
 
    def buy(self,m1,x1):
 
        b=[2,4,7,9,10,12,14,15,17,19,20,22,24,25,27,28,30,32,33,35,38,40]
 
        for b1 in b: 
            if x1==b1:
               self.subbuy(m1,x1)
 
    def subbuy(self,m1,x1):
 
        if self.x[x1]==0:
           self.x[x1]=m1
           self.m[m1]=self.m[m1]-self.price[x1]
 
 
 
import mono
 
 
price=[0,0,60,0,60,0,200,100,0,100,120,0,140,150,140,160,200,180,0,180,200,0,220,0,220,240,200,260,260,150,280,0,300,300,0,320,200,0,350,0,400,0]
 
rent=[0]
for i in range(40):
    rent.append(0)
 
rent[	2	]=	2
rent[	4	]=	4
rent[	7	]=	6
rent[	9	]=	6
rent[	10	]=	8
rent[	12	]=	10
rent[	14	]=	10
rent[	15	]=	12
rent[	17	]=	14
rent[	19	]=	14
rent[	20	]=	16
rent[	22	]=	18
rent[	24	]=	18
rent[	25	]=	20
rent[	27	]=	22
rent[	28	]=	22
rent[	30	]=	24
rent[	32	]=	26
rent[	33	]=	26
rent[	35	]=	28
rent[	38	]=	35
rent[	40	]=	50
 
card=[""]
for i in range(40):
    card.append("")
 
card[1]="GO"
card[2]="地中海通り"
card[3]="共同基金"
card[4]="バルティック通り"
card[5]="所得税"
card[6]="リーディング鉄道"
card[7]="オリエンタル通り"
card[8]="チャンス"
card[9]="バーモント通り"
card[10]="コネチカット通り"
card[11]="刑務所、刑務所見学"
card[12]="セントチャールズプレース"
card[13]="電力会社"
card[14]="ステーツ通り"
card[15]="バージニア通り"
card[16]="ペンシルバニア鉄道"
card[17]="セントジェームスプレース"
card[18]="共同基金"
card[19]="テネシー通り"
card[20]="ニューヨーク通り"
card[21]="フリーパーキング"
card[22]="ケンタッキー通り"
card[23]="チャンス"
card[24]="インディアナ通り"
card[25]="イリノイ通り"
card[26]="B&O 鉄道"
card[27]="アトランティック通り"
card[28]="ベントノール通り"
card[29]="水道会社"
card[30]="マービンガーデン"
card[31]="GO TO JAIL"
card[32]="パシフィック通り"
card[33]="ノースキャロライナ通り"
card[34]="共同基金"
card[35]="ペンシルバニア通り"
card[36]="ショートライン鉄道"
card[37]="チャンス"
card[38]="パークプレース"
card[39]="物品税"
card[40]="ボードウォーク"
 
def dice():
    d=[1,2,3,4,5,6]
    d1=np.random.choice(d)
    d2=np.random.choice(d)
    return d1+d2
 
def sell(m1,x1):
 
    se=[2,4,7,9,10,12,14,15,17,19,20,22,24,25,27,28,30,32,33,35,38,40]
 
    for b1 in se: 
        if x1==b1:
           subsell(m1,x1)
 
def subsell(m1,x1):
 
    q=x[x1]
    if q>0:
       m[m1]=m[m1]-rent[x1]
       m[q]=m[q]+rent[x1]
 
def buy(m1,x1):
 
    b=[2,4,7,9,10,12,14,15,17,19,20,22,24,25,27,28,30,32,33,35,38,40]
 
    for b1 in b: 
        if x1==b1:
           subbuy(m1,x1)
 
def subbuy(m1,x1):
 
    if x[x1]==0:
       x[x1]=m1
       m[m1]=m[m1]-price[x1]
 
mode=0
a=[1,1,1,1]
m=[1500,1500,1500,1500]
x=[]
for i in range(41):
    x.append(0)
 
game=0
while game<100:
      game=game+1
      sub=mono.mono()
      sub.price=price
      sub.rent=rent
      sub.m=m
      sub.a=a
      sub.x=x
      sub.mode=mode
      sub.makedata()
      mode=sub.mode
      x=sub.x
      m=sub.m
      a=sub.a
 
最終更新:2018年01月23日 15:03