コード例 #1
0
def scan(filename):
    import xlrd, leader
    workbook = xlrd.open_workbook(filename)
    sheet = workbook.sheet_by_name('leaders')
    num_rows = sheet.nrows
    num_cells = sheet.ncols
    data = []
    times = []
    subjects = []
    timeslots = 26  #can be changed
    for curr_row in range(num_rows):
        available = []
        subjectPreference = []
        for i in range(timeslots):
            if curr_row < 1:
                #start at 3rd column
                times.append(sheet.cell_value(0, i + 2))
            else:
                if sheet.cell_value(curr_row, i + 2) == 1:
                    available.append(sheet.cell_value(0, i + 2))
                else:
                    available.append(' ')
        for j in range(num_cells - timeslots - 2):
            if curr_row < 1:
                subjects.append(sheet.cell_value(0, j + timeslots + 2))
            else:
                subjectPreference.append(
                    int(sheet.cell_value(curr_row, j + timeslots + 2)))
        if curr_row != 0:
            first = sheet.cell_value(curr_row, 0)
            last = sheet.cell_value(curr_row, 1)
            data.append(
                leader.Leader(first, last, subjectPreference, available))
    return (times, subjects, data)
コード例 #2
0
ファイル: country.py プロジェクト: yazici/Megacosm-Generator
    def __init__(self, redis, features={}):
        Generator.__init__(self, redis, features)
        self.logger = logging.getLogger(__name__)

        if not hasattr(self, 'regioncount'):
            self.regioncount = random.randint(self.regiondetails['mincount'], self.regiondetails['maxcount'])
        if not hasattr(self, 'leader'):
            self.leader = leader.Leader(self.redis, {"location":self})
            #self.leader = Leader(self.redis)
        if not hasattr(self, 'name'):
            self.name = Name(self.redis, 'country')
コード例 #3
0
    def __init__(self, redis, features={}):

        Generator.__init__(self, redis, features)
        self.logger = logging.getLogger(__name__)

        if not hasattr(self, 'leader'):
            self.leader = leader.Leader(self.redis, {"location": self})
            #self.leader = Leader(self.redis)

        if not hasattr(self, 'text'):
            self.text = self.render_template(self.template)
        self.name = Name(self.redis, 'organization', {'leader': self.leader})
コード例 #4
0
    def __init__(self, IP, port, state, follower_ips):
        # Initialize class variables
        self.IP = IP
        self.port = port
        self.state = state
        self.current_term = 1
        # self.votedFor 		= null
        self.commit_index = 0
        self.current_commit = None
        self.BUFFER_SIZE = 1024
        self.followers = []
        self.follower_ips = []
        self.shouldEnd = False
        self.rcvdHeartbeat = False
        self.node_thread = None

        for flr in follower_ips:
            self.follower_ips.append(flr)
        self.follower_ips.append(self.IP)

        # Erase file
        log = open("log.txt", 'w')
        log.truncate(0)
        log.close()

        # Open socket
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        # Initialize node type (leader or follower)
        if self.isLeader():
            self.node_thread = leader.Leader(s, self)
            self.rcvdHeartbeat = True
        else:
            self.node_thread = follower.Follower(s, self)

        # Timeout thread
        timer_thread = threading.Thread(target=self.timeoutTimer)
        timer_thread.setDaemon(True)

        self.node_thread.start()
        timer_thread.start()

        timer_thread.join()
コード例 #5
0
ファイル: city.py プロジェクト: yazici/Megacosm-Generator
    def __init__(self, redis, features={}):
        Generator.__init__(self, redis, features)
        self.logger = logging.getLogger(__name__)
        if not hasattr(self, 'region'):
            print "noregion!!!"
            self.region = region.Region(self.redis)

        self.gatheringplace = Business(self.redis,
                                       {'kind': 'bus_' + self.gatheringplace})
        if not hasattr(self, 'leader'):
            self.leader = leader.Leader(self.redis, {"location": self})
            #self.leader = Leader(self.redis)

        if not hasattr(self, 'name'):
            self.name = Name(self.redis, 'city')

        self.citizen = NPC(self.redis)

        self.calculate_population()
        self.calculate_racial_breakdown()
        self.select_subraces()
コード例 #6
0
def main():
    dimension = (WIDTH, HEIGHT)
    screen = pygame.display.set_mode(dimension)
    screen.fill(BG_COLOR)
    pygame.display.flip()
    rocket = Spaceship(screen)
    invaders = []
    y = 10
    for j in range(COL_SIZE):
        row = []
        x = 5
        lead = leader.Leader(0, y, screen)
        for i in range(ROW_SIZE):
            row.append(invader.Invader(x, y, lead, screen))
            x += invader.INVADER_SIZE[0] - 20
        lead.x = x
        row.append(lead)
        y += invader.INVADER_SIZE[1] - 20
        invaders.append(row)

    barriers = []
    barriers.append(Barrier(WIDTH / 20, 5 * HEIGHT / 8, screen))
    barriers.append(Barrier(5 * WIDTH / 20, 5 * HEIGHT / 8, screen))
    barriers.append(Barrier(9 * WIDTH / 20, 5 * HEIGHT / 8, screen))
    barriers.append(Barrier(13 * WIDTH / 20, 5 * HEIGHT / 8, screen))
    barriers.append(Barrier(17 * WIDTH / 20, 5 * HEIGHT / 8, screen))

    running = True
    while running:
        try:
            if keyboard.is_pressed('z'):  # if key 'q' is pressed
                rocket.move(-SHIP_SPEED)
            elif keyboard.is_pressed('x'):
                rocket.move(SHIP_SPEED)
            else:
                rocket.move(0)
            if keyboard.is_pressed(' '):
                rocket.shoot()
        except:
            pass

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False

        screen.fill(BG_COLOR)
        rocket.update(barriers=barriers, invaders=invaders)
        for rowe in invaders:
            for i in range(ROW_SIZE, 0, -1):
                rowe[i].update(barriers, rocket)

        for barrier in barriers:
            barrier.show()

        for i in range(rocket.lives):
            screen.blit(HEART, (5 + i * HEART_SIZE[0], 5))

        if rocket.lives <= 0:
            break

        pygame.display.update()