コード例 #1
0
ファイル: ui.py プロジェクト: liucong3/DQN
                elif 'right' in self.keys:
                    action = 3
                else:
                    action = 0
        actionText = AtariKeyControl.all_action_meanings[action]
        action2 = 0
        if self.meaning_actions.has_key(actionText):
            action2 = self.meaning_actions[actionText]
        #print actionText, self.action_meanings[action2]
        return action2


if __name__ == '__main__':
    from option import Option
    sys.argv = argv
    opt = Option('config.json')
    gameEnv = AtariEnv.create(opt)
    if not opt.get('savePath', None):
        gameControl = AtariKeyControl(gameEnv.get_action_meanings())
        bindKeyEvents = True
    else:
        from learn import AtariControl
        AtariControl.initOptions(opt, gameEnv)
        import tensorflow as tf
        sess = tf.Session()
        from net import Net
        qNetwork = Net(opt, sess, name='QNetwork')
        # from netComm import buildNet
        # qNetwork = buildNet(opt, gameEnv, sess)
        path = opt['savePath']  # save/agent-best
        saver = tf.train.Saver(qNetwork.params)
コード例 #2
0
    def __init__(self, gamma=0.9):
        # List of all options
        self.options = \
         [Option("left"), Option("up"), Option("right"), Option("down"),
          Option("topleft->topright"), Option("topleft->botleft"),
          Option("topright->topleft"), Option("topright->botright"),
          Option("botleft->topleft"), Option("botleft->botright"),
          Option("botright->botleft"), Option("botright->topright")]

        self.gamma = gamma  # Discount factor, 0.9 by default as in paper
        self.current_option = None
        self.starting_state = None  # Starting state of current option
        self.k = 0  # Number of time steps elapsed in current option
        self.cumulative_reward = 0  # Total reward for current option

        # R[s, o] = expected cumulative discounted reward when starting
        #   option o in state s
        # P[s, o, s'] = multi-time model of ending up in state s' when
        #   starting option o in state s
        # N[s, o] = number of times option o is taken in state s
        n_states = 13 * 13
        n_options = len(self.options)
        self.R = np.zeros((n_states, n_options))
        self.P = np.zeros((n_states, n_options, n_states))
        self.N = np.zeros((n_states, n_options))
コード例 #3
0
        user_info = {}

        if platform.system() == 'Windows':
            user_info['os'] = 'Windows'
        elif platform.system() == 'Linux':
            user_info['os'] = 'Linux'
        elif platform.system() == 'Darwin':
            user_info['os'] = 'Darwin'

        user_info['handle'] = input('* Codeforces Handle: ')

        mkdir = input('* mkdir option [true/false]: ')
        while True:
            if mkdir == 'true' or mkdir == 'false':
                break
            mkdir = input('* mkdir option [true/false]: ')

        if mkdir == 'false':
            user_info['mkdir'] = False
        if mkdir == 'true':
            user_info['mkdir'] = True
            user_info['dir_name'] = input('* directory name format: ')

        user_info['source_name'] = input('* source name format: ')

        crawler = Crawler()
        option = Option(user_info)
        Main(crawler, option, user_info).run()
    except KeyboardInterrupt:
        print('\n* bye\n')
コード例 #4
0
################################################################################
# Copyright (Python) taegyu <https://github.com/ohseoh31>                      #
# @author taegue ([email protected]) bob7 df                                 #
# @brief  [jpg, jpeg]file marker parser code with python                       #
# using command : python -i [filename]                                         #
################################################################################

from option import Option

if __name__ == "__main__":

    option = Option()
    option.get_option()
    option.do_work()
コード例 #5
0
 def starting_kit(self):
     self.add_option(Option("START", 0 , 520))
     self.add_option(Option("SOUND ON/OFF", 1, 480))
コード例 #6
0
def main():
    #esto es para centrar la pantalla
    os.environ['SDL_VIDEO_CENTERED'] = "1"

    pygame.init()
    #mouse invisible
    pygame.mouse.set_visible(0)
    screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
    pygame.display.set_icon(tool.load_image("skyhaw"))
    pygame.display.set_caption(NAME)
    f = load_file("options")
    c = 0
    for value in f:
        c += 1
        if c == 1:
            Options.music = str_to_bool(value)
        if c == 2:
            Options.sound = str_to_bool(value)
        if c == 3:
            Options.playername = value
    tool.load_music("music")
    #aca se controla con un if las  opciones de musica on/off
    if Options.music == True:
        pygame.mixer.music.play(-1)
    main_selection = 0
    Sea.global_sea = Sea()
    while not main_selection == 6:
        main_selection = Menu(screen,
                              ("Jugar", "Historia", "Mejores Puntos",
                               "Opciones", "Ayuda", "Creditos", "Salir"),
                              main_selection).run()
        if main_selection == 0:
            dificultad = 0
            dificultad = Menu(screen, ("Cadete", "Teniente", "Halcon"),
                              dificultad).run()
            if (dificultad is not 6):
                screen = pygame.display.set_mode((800, 200))
                puntos = main_loop(dificultad)
                screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))

                objScores = Scores(screen, dificultad)
                objScores.scores, res = objScores.loadNewScore(
                    Options.playername, puntos, dificultad)
                if (res):
                    objScores.run()
        elif main_selection == 1:
            Text(screen, "history").run()
            #Historia
        elif main_selection == 2:
            view = 0
            view = Menu(screen, ("Cadete", "Teniente", "Halcon"), view).run()
            if (view is not 6):
                Scores(screen, view).run()
            #Mejores Puntos
        elif main_selection == 3:
            Option(screen).run()
            #Opciones
        elif main_selection == 4:
            Text(screen, "help").run()
        elif main_selection == 5:
            Text(screen, "credit").run()
        pygame.display.update()
    pygame.quit()
    sys.exit()
コード例 #7
0
ファイル: namespace.py プロジェクト: peterbe/configman
 def add_option(self, name, *args, **kwargs):
     an_option = Option(name, *args, **kwargs)
     setattr(self, name, an_option)
コード例 #8
0
import torch
import torchvision
import torchvision.transforms as transforms
from option import Option

def trainval(opt):
    device = torch.device(opt.device)

    train_transform = transforms.Compose([transforms.RandomResizedCrop(scale=opt.scale_limit),
                                          transforms.RandomHorizontalFlip(),
                                          transforms.Normalize(mean=Dataset.mean, std=Dataset.std),
                                          transforms.ToTensor()])

    val_transform = transforms.Compose([transforms.Normalize(mean=Dataset.mean, std=Dataset.std),
                                        transforms.ToTensor()])

if __name__ == '__main__':
    trainval(Option().parse())
コード例 #9
0
ファイル: config_manager.py プロジェクト: peterbe/configman
 def _setup_auto_help(self):
     help_option = Option(name='help', doc='print this', default=False)
     self.definition_source_list.append({'help': help_option})
コード例 #10
0
    def __init__(self, options, groups):
        OptionSuite.__init__(self, options)

        groups.append(
            OptionGroup(name='other',
                        title='Other Options',
                        help='Less common options'))

        options.append(
            Option('runnr',
                   long_name='--runnr',
                   help='Run number',
                   default=1,
                   type='int'))

        options.append(
            Option(long_name='--evtnr',
                   name='evtnr',
                   help='Number of first event',
                   default=1,
                   type='int'))

        options.append(
            Option(long_name='--seed',
                   name='seed',
                   help='Random seed',
                   default=None,
                   type='int'))

        options.append(
            Option(long_name='--egs_seed_offset',
                   name='egs_seed_offset',
                   help='value to be added to EGS seed (for debugging)',
                   default=0,
                   type='int',
                   group='other'))

        options.append(
            Option(long_name='--nshow',
                   name='nshow',
                   help='Number of Showers',
                   default=1,
                   type='int'))

        options.append(
            Option(long_name='--no-nkg',
                   name='donkg',
                   help='Run NKG',
                   default=True,
                   action="store_false",
                   group='other'))

        options.append(
            Option(long_name='--no-egs',
                   name='doegs',
                   help='Run EGS',
                   default=True,
                   action="store_false",
                   group='other'))

        options.append(
            Option(long_name='--eslope',
                   name='eslope',
                   help='CR spectral index (only if ranpri=0)',
                   default=-2.7,
                   type='float'))

        options.append(
            Option(long_name='--prmpar',
                   name='prmpar',
                   help='CR primary type',
                   default=14,
                   type='int'))

        options.append(
            Option(long_name='--theta-min',
                   name='cthmin',
                   help='Min theta of injected cosmic rays',
                   default=0.0,
                   type='float'))

        options.append(
            Option(long_name='--theta-max',
                   name='cthmax',
                   help='Max theta of injected cosmic rays',
                   default=65.,
                   type='float'))

        options.append(
            Option(long_name='--phi-min',
                   name='cphmin',
                   help='Min phi of injected cosmic rays',
                   default=0.0,
                   type='float'))

        options.append(
            Option(long_name='--phi-max',
                   name='cphmax',
                   help='Max phi of injected cosmic rays',
                   default=360.0,
                   type='float'))

        options.append(
            Option(long_name='--emin',
                   name='emin',
                   help='CR min energy',
                   default=600.,
                   type='float'))

        options.append(
            Option(long_name='--emax',
                   name='emax',
                   help='CR max energy',
                   default=1.e11,
                   type='float'))

        options.append(
            Option(long_name='--ecuts1',
                   name='ecuts1',
                   help='hadron min energy (see corsika docs)',
                   default=0.1,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--ecuts2',
                   name='ecuts2',
                   help='muon min energy (see corsika docs)',
                   default=0.1,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--ecuts3',
                   name='ecuts3',
                   help='electron min energy (see corsika docs)',
                   default=0.00025,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--ecuts4',
                   name='ecuts4',
                   help='photon min energy (see corsika docs)',
                   default=0.00025,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--nuaddi',
                   name='nuaddi',
                   help='additional information for neutrinos',
                   default=False,
                   action="store_true",
                   group='other'))

        options.append(
            Option(long_name='--muaddi',
                   name='muaddi',
                   help='additional information for muons',
                   default=False,
                   action="store_true",
                   group='other'))

        options.append(
            Option(long_name='--emaddi',
                   name='emaddi',
                   help='additional information for EM particles',
                   default=False,
                   action="store_true",
                   group='other'))

        options.append(
            Option(long_name='--obslev',
                   name='obslev',
                   help='distance above sea level (in cm)',
                   type=float,
                   default=2837.e2))

        options.append(
            Option(long_name='--length',
                   name='length',
                   help='length of generation cylinder in m '
                   '(for detcfg = length/2*radius calculation)',
                   default=1400.,
                   type='float'))

        options.append(
            Option(long_name='--radius',
                   name='radius',
                   help='radius of generation cylinder in m '
                   '(for detcfg = length/2*radius calculation)',
                   default=700.,
                   type='float'))

        options.append(
            Option(long_name='--kcut',
                   name='kcut',
                   help='minimum neutrino energy required to keep the shower',
                   default=None,
                   type='float',
                   group='other'))

        options.append(
            Option(
                long_name='--save-long',
                name='save_long',
                help=
                'Save the longitudinal profile in output file (LONG blocks).',
                default=False,
                action="store_true",
                group='other'))

        options.append(
            Option(long_name='--long-step',
                   name='long_step',
                   help='Step size in longitudinal distributions',
                   default=20.,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--arrang',
                   name='arrang',
                   help='Rotation of detector relative to magnetic '
                   'field direction (in degrees)',
                   default=0.,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--debug',
                   name='debug',
                   help='Enable disable debug mode',
                   default=False,
                   action="store_true",
                   group='other'))

        options.append(
            Option(long_name='--hi-low',
                   name='hi_low',
                   help='Transition Energy between Models',
                   default=None,
                   type='float',
                   group='other'))

        options.append(
            Option(
                long_name='--mag-vertical',
                name='mag_vertical',
                help=
                'Magnetic field vertical component (micro-Tesla). The default is for South Pole.',
                default=16.4,
                type='float'))

        options.append(
            Option(
                long_name='--mag-horizontal',
                name='mag_horizontal',
                help=
                'Magnetic field horizontal component (micro-Tesla). The default is for South Pole.',
                default=-53.4,
                type='float'))

        options.append(
            Option(long_name='--fix-height',
                   name='fixhei',
                   help='Fix height of first interaction.',
                   default=None,
                   type='float',
                   group='other'))

        options.append(
            Option(long_name='--fixchi',
                   name='fixchi',
                   help='Starting altitude of primary particle.',
                   default=None,
                   type='float',
                   group='other'))
コード例 #11
0
ファイル: index.py プロジェクト: laiyongqin/iregex
    "/text",
    "textarea",
)
reoptions = [('s', 'dotall', 'Dot Match All'),
             ('i', 'ignorecase', 'Case Insensitive'),
             ('m', 'multiline', '^$ at line breaks'),
             ('x', 'verbose', 'Free-Spacing'), ('u', 'unicode', 'Unicode')]

funcs = [
    '', 'Import regex library',
    'If/else branch whether the regex matches (part of) a string'
]

langs = ('python', )
app = web.application(urls, globals())
flag = Option()
text = TextArea()
env = Environment(loader=PackageLoader('index', 'templates'))


#the home page(the only page)
class index:
    def GET(self):
        template = env.get_template('index.html')
        return template.render(reoptions=reoptions,
                               functions=funcs,
                               langs=langs)


#when option changes in the front,
class options:
コード例 #12
0
ファイル: cgen.py プロジェクト: fxxing/play
    def gen_global(self):
        content = ['#include "const.h"']
        package_children = []
        package_list = ['NATIVE Package PACKAGES[] = {']
        for package in self.packages:
            child_packages = []
            child_classes = []
            for child in package.children.values():
                if isinstance(child, Package):
                    child_packages.append(child)
                else:
                    child_classes.append(child)
            name = package.qualified_name.replace('.', '_')
            if not name:
                name = "_root"
            package_children.append('int ' + name + '_packages[] = {' +
                                    ', '.join(
                                        str(self.packages.index(p))
                                        for p in child_packages) + '};')
            package_children.append('int ' + name + '_classes[] = {' +
                                    ', '.join(
                                        str(self.classes.index(c))
                                        for c in child_classes) + '};')
            package_list.append(
                '    {' + '"{}", {}, {}_packages, {}, {}_classes'.format(
                    package.qualified_name, len(child_packages), name,
                    len(child_classes), name) + '},')
        package_list.append('};')
        content.extend(package_children)
        content.extend(package_list)

        externals = set()
        method_assigns = {}
        # class_assigns = []
        class_children = []
        class_list = ['NATIVE Class CLASSES[] = {']
        class_ids = []
        for i, cls in enumerate(self.classes):
            superclasses = cls.superclasses
            cls_name = cls.qualified_name.replace('.', '_')
            if cls.is_native:
                class_ids.append('int {}_id = {};'.format(cls_name, i))
            class_children.append('int ' + cls_name + '_superclasses[] = {' +
                                  ', '.join(
                                      str(self.classes.index(s))
                                      for s in superclasses) + '};')
            class_children.append('Method ' + cls_name + '_methods[] = {')
            assigns = []
            method_assigns[cls_name + '_methods'] = assigns
            for method in cls.inherited_methods:
                externals.add('extern int ' + mangle_method_name(method) + ';')
                sig = ', '.join(str(p.type) for p in method.parameters)
                class_children.append(
                    '    {' + '"{}", {}, {}, "{}", NULL'.format(
                        method.name, self.classes.index(method.owner), 0,
                        sig) + '},')
                assigns.append(mangle_method_name(method))
            class_children.append('};')
            flag = 0
            if cls.is_interface:
                flag |= 1
            if cls.is_abstract:
                flag |= 2
            if cls.is_native:
                flag |= 4
            # new_method = cls.qualified_name.replace('.', '_') + '_new'
            # externals.add('extern int ' + new_method + ';')
            # class_assigns.append(new_method)
            class_list.append(
                '    {' +
                '"{}", {},  {}, {}, {}_superclasses, {}, {}_methods'.format(
                    cls.qualified_name, i, flag, len(superclasses), cls_name,
                    len(cls.inherited_methods), cls_name) + '},')
        class_list.append('};')

        content.extend(class_ids)
        content.extend(externals)
        content.extend(class_children)
        content.extend(class_list)

        content.append('NATIVE void initConst() {')
        # for i, v in enumerate(class_assigns):
        #     content.append('    CLASSES[{}].new = &{};'.format(i, v))
        for k, l in method_assigns.items():
            for i, v in enumerate(l):
                content.append('    {}[{}].func = &{};'.format(k, i, v))

        content.append('}')
        with open(Option().const_file, 'w') as f:
            f.write('\n'.join(content))
コード例 #13
0
from setup import *
from option import Option
from draw_text import *
import time

# Starting Menu
options = [
    Option("New Game", (140, 100), menu_font, screen),
    Option("Load Game", (140, 150), menu_font, screen),
    Option("Options", (140, 200), menu_font, screen)
]
selection = " "
selection_made = False

while not selection_made:
    event = pygame.event.wait()
    screen.fill((0, 0, 0))

    if event.type == pygame.QUIT:
        selection_made = True
        game_over = True

    elif event.type == pygame.MOUSEBUTTONUP:
        pos = pygame.mouse.get_pos()

    for option in options:
        if option.rect.collidepoint(pygame.mouse.get_pos()):
            option.hovered = True
            if option.is_clicked() is True:
                selection = option.text
                selection_made = True
コード例 #14
0
 def _load_parameter(self):
     self._opt = Option(
         f'{os.path.dirname(os.path.realpath(__file__))}/conf/conf.json')
     self._logger = get_logger('MailDog')
コード例 #15
0
        logger.info(
            '||==>Val Epoch: Val_best_acc_index={}\tVal_best_acc={:.4f}\n'.
            format(val_best_acc_index, val_best_acc))
        # break
    return val_best_acc


if __name__ == '__main__':
    parser = argparse.ArgumentParser(description='Transfer')
    parser.add_argument(
        'conf_path',
        type=str,
        metavar='conf_path',
        help='the path of config file for training (default: 64)')
    argparses = parser.parse_args()
    args = Option(argparses.conf_path)
    args.set_save_path()

    # args = parse_args()
    best_val_acc_list = []
    logger = None
    temp = args.outpath
    for i in range(1, args.repeat + 1):
        if args.repeat != 1:
            args.outpath = temp + "_{:02d}".format(i)

        output_process(args.outpath)
        write_settings(args)
        logger = get_logger(args.outpath,
                            'attention_transfer_{:02d}'.format(i))
        if i == 1:
コード例 #16
0
    def __init__(self, options, groups, version=None):
        OptionSuite.__init__(self, options)

        if version is None: version = get_version()

        from .coconut_options import CoconutOptionCollection
        self.coconut_options = CoconutOptionCollection(version)

        options.append(
            Option(long_name='--version',
                   name='version',
                   help='Corsika version',
                   default='v6900'))

        options.append(
            Option(
                long_name='--platform',
                name='platform',
                help=
                'Compiler platform. This is usually just a tag for the tarball.',
                default='Linux'))

        options.append(
            Option(long_name='--fluka-tarball',
                   name='fluka_tarball',
                   help='Fluka tarball.',
                   default=None))

        options.append(
            Option(
                long_name='--old-names',
                name='old_names',
                action='store_true',
                help=
                'Use old naming convention for executables\nUses corsika73700Linux_SIBYLL_gheisha instead of corsika73700Linux_1_6_1_1',
                default=False))

        required = ('float', 'he_model', 'le_model', 'geometry')
        titles = {g: '' for g in self.coconut_options.option_groups}
        titles.update({
            'float': '32/64 bit compile option',
            'he_model': 'High-energy hadronic model',
            'le_model': 'Low-energy hadronic model',
            'geometry': 'Detector geometry',
            'other': 'Other compilation options'
        })
        defaults = {g: None for g in self.coconut_options.option_groups}
        defaults.update({'float': 'float_default'})
        for g in required:
            choices = [
                o.name for n, o in self.coconut_options.options.iteritems()
                if o.group == g
            ]
            options.append(
                Option(g,
                       long_name='--' + g.replace('_', '-'),
                       choices=choices,
                       default=defaults[g],
                       help=titles[g] + '. One of: %s' % (', '.join(choices))))
        for g in self.coconut_options.option_groups:
            if not g in required:
                groups.append(OptionGroup(name=g, title=titles[g]))
        for n, o in self.coconut_options.options.iteritems():
            if not o.group in required:
                options.append(
                    Option(long_name='--' + o.name.replace('_', '-'),
                           help=o.help,
                           name=o.group,
                           action='append_const',
                           const=o.name,
                           group=o.group))
コード例 #17
0
 def __init__(self, opt_name: str):
     super().__init__()
     self.opt = Option(opt_name)
コード例 #18
0
	def load_comparator(self):
		self.ComparatorOption = {
			0: Option(0, "comparator", "Comparator", ">", 0, "Bigger"),
			1: Option(1, "comparator", "Comparator", "<", 1, "Smaller"),
		}
コード例 #19
0
ファイル: menu.py プロジェクト: yhaidai/bet-assistant
    def __get_default_tree(self):
        Option.id = 0

        root = Option(Menu.__ROOT_OPTION_TEXT, Menu.__ACTION_SELECTION_PROMPT)
        root.add_children(
            Option('Arbitrage bets',
                   Menu.__SPORT_SELECTION_PROMPT).add_children(
                       Option(
                           'Counter-Strike: Global Offensive',
                           '*Counter-Strike: Global Offensive arbitrage bets*',
                           True),
                       Option('Dota 2', '*Dota 2 arbitrage bets*', True),
                       Option('League of Legends',
                              '*League of Legends arbitrage bets*', True),
                       Option('Football', '*Football arbitrage bets*', True),
                       Option(self.go_back_option_text,
                              Menu.__SPORT_SELECTION_PROMPT)),
            Option('Subscribe', Menu.__SPORT_SELECTION_PROMPT).add_children(
                Option(
                    'Counter-Strike: Global Offensive',
                    '*Successfully subscribed to Counter-Strike: Global Offensive*',
                    False, self.user.subscribe, 'csgo'),
                Option('Dota 2', '*Successfully subscribed to Dota 2*', False,
                       self.user.subscribe, 'dota'),
                Option('League of Legends',
                       '*Successfully subscribed to League of Legends*', False,
                       self.user.subscribe, 'lol'),
                Option('Football', '*Successfully subscribed to Football*',
                       False, self.user.subscribe, 'football'),
                Option(self.go_back_option_text,
                       Menu.__SPORT_SELECTION_PROMPT)),
            Option('Unsubscribe', Menu.__SPORT_SELECTION_PROMPT).add_children(
                Option(
                    'Counter-Strike: Global Offensive',
                    '*Successfully unsubscribed from Counter-Strike: Global Offensive*',
                    False, self.user.unsubscribe, 'csgo'),
                Option('Dota 2', '*Successfully unsubscribed from Dota 2*',
                       False, self.user.unsubscribe, 'dota'),
                Option('League of Legends',
                       '*Successfully unsubscribed from League of Legends*',
                       False, self.user.unsubscribe, 'lol'),
                Option('Football', '*Successfully unsubscribed from Football*',
                       False, self.user.unsubscribe, 'football'),
                Option(self.go_back_option_text,
                       Menu.__SPORT_SELECTION_PROMPT)),
            Option(
                'Show my subscriptions', Menu.__SHOW_SUBSCRIPTIONS_PROMPT,
                False, lambda user: '******' + '\n'.join([
                    SPORT_SHORT_NAMES_TO_FULL[sub]
                    for sub in user.subscriptions
                ]) + '*', self.user))
        return root
コード例 #20
0
	def load_flop(self):
		self.FlopOption = {
			True: Option(True, "flop", "Flop", True, 0, "True"),
			False: Option(False, "flop", "Flop", False, 1, "False"),
		}
コード例 #21
0
ファイル: main.py プロジェクト: mcteach21/scrabble
from termcolor import colored
from menu import Menu
from onlinedico import dictionary_search
from option import Option
from scrabble import scrabble

msg_color = 'blue'


def print_msg(msg):
    print('*******************************************************')
    print('\t', colored(msg, msg_color))
    print('*******************************************************')


def search():
    word = input('mot recherché : ')
    dictionary_search(word)


if __name__ == '__main__':
    print_msg('Python : Scrabble => Dictionnaire (en ligne)')
    menu = Menu([
        Option('Scrabble (mots possibles)', scrabble),
        Option('Chercher dans Dictionnaires', search)
        # , Option('Tests', test)
    ])
    while not menu.want_exit:
        menu.show()
    print('*******************************************************')
コード例 #22
0
 def add_option(self, side, option_type, strike, price):
     option = Option(side, option_type, strike, price)
     self.options.append(option)
     self.set_min_max(option.minimum, option.maximum)
コード例 #23
0
 def get_options(self, node, option, mapping={}, text=""):
     node.add_options(Option(option, node, mapping, text))
コード例 #24
0
    def __init__(self, parent=None):
        super().__init__(parent)
        self.setWindowTitle('ConvertAll')
        modPath = os.path.abspath(sys.path[0])
        if modPath.endswith('.zip'):  # for py2exe
            modPath = os.path.dirname(modPath)
        iconPathList = [
            iconPath,
            os.path.join(modPath, 'icons/'),
            os.path.join(modPath, '../icons')
        ]
        self.icons = icondict.IconDict()
        self.icons.addIconPath([path for path in iconPathList if path])
        try:
            QApplication.setWindowIcon(self.icons['convertall_med'])
        except KeyError:
            pass
        self.helpView = None
        self.basesDialog = None
        self.fractionDialog = None
        self.option = Option('convertall', 20)
        self.option.loadAll(optiondefaults.defaultList)
        self.recentUnits = recentunits.RecentUnits(self.option)
        try:
            num = ConvertDlg.unitData.readData()
        except unitdata.UnitDataError as text:
            QMessageBox.warning(self, 'ConvertAll',
                                _('Error in unit data - {0}').format(text))
            sys.exit(1)
        try:
            print(_('{0} units loaded').format(num))
        except UnicodeError:
            print('{0} units loaded'.format(num))
        self.fromGroup = UnitGroup(ConvertDlg.unitData, self.option)
        self.toGroup = UnitGroup(ConvertDlg.unitData, self.option)
        self.origPal = QApplication.palette()
        self.updateColors()
        self.unitButtons = []
        self.textButtons = []

        topLayout = QHBoxLayout(self)  # divide main, buttons
        mainLayout = QVBoxLayout()
        mainLayout.setSpacing(8)
        topLayout.addLayout(mainLayout)
        unitLayout = QGridLayout()  # unit selection
        unitLayout.setVerticalSpacing(3)
        unitLayout.setHorizontalSpacing(20)
        mainLayout.addLayout(unitLayout)

        fromLabel = QLabel(_('From Unit'))
        unitLayout.addWidget(fromLabel, 0, 0)
        self.fromUnitEdit = unitedit.UnitEdit(self.fromGroup)
        unitLayout.addWidget(self.fromUnitEdit, 1, 0)
        self.fromUnitEdit.setFocus()

        toLabel = QLabel(_('To Unit'))
        unitLayout.addWidget(toLabel, 0, 1)
        self.toUnitEdit = unitedit.UnitEdit(self.toGroup)
        unitLayout.addWidget(self.toUnitEdit, 1, 1)
        self.fromUnitEdit.gotFocus.connect(self.toUnitEdit.setInactive)
        self.toUnitEdit.gotFocus.connect(self.fromUnitEdit.setInactive)

        vertButtonLayout = QVBoxLayout()
        vertButtonLayout.setSpacing(2)
        mainLayout.addLayout(vertButtonLayout)

        self.unitListView = unitlistview.UnitListView(ConvertDlg.unitData)
        mainLayout.addWidget(self.unitListView)
        self.fromUnitEdit.currentChanged.connect(
            self.unitListView.updateFiltering)
        self.toUnitEdit.currentChanged.connect(
            self.unitListView.updateFiltering)
        self.fromUnitEdit.keyPressed.connect(self.unitListView.handleKeyPress)
        self.toUnitEdit.keyPressed.connect(self.unitListView.handleKeyPress)
        self.unitListView.unitChanged.connect(self.fromUnitEdit.unitUpdate)
        self.unitListView.unitChanged.connect(self.toUnitEdit.unitUpdate)
        self.unitListView.haveCurrentUnit.connect(self.enableButtons)
        self.unitListView.setFocusPolicy(Qt.NoFocus)

        textButtonLayout = QHBoxLayout()
        textButtonLayout.setSpacing(6)
        vertButtonLayout.addLayout(textButtonLayout)
        textButtonLayout.addStretch(1)
        self.textButtons.append(QPushButton('{0} (^2)'.format(_('Square'))))
        self.textButtons.append(QPushButton('{0} (^3)'.format(_('Cube'))))
        self.textButtons.append(QPushButton('{0} (*)'.format(_('Multiply'))))
        self.textButtons.append(QPushButton('{0} (/)'.format(_('Divide'))))
        for button in self.textButtons:
            button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
            button.setFocusPolicy(Qt.NoFocus)
            textButtonLayout.addWidget(button)
            button.clicked.connect(self.unitListView.addUnitText)
        textButtonLayout.addStretch(1)

        unitButtonLayout = QHBoxLayout()
        unitButtonLayout.setSpacing(6)
        vertButtonLayout.addLayout(unitButtonLayout)
        unitButtonLayout.addStretch(1)
        self.clearButton = QPushButton(_('Clear Unit'))
        self.clearButton.clicked.connect(self.unitListView.clearUnitText)
        self.recentButton = QPushButton(_('Recent Unit'))
        self.recentButton.clicked.connect(self.recentMenu)
        self.filterButton = QPushButton(_('Filter List'))
        self.filterButton.clicked.connect(self.filterMenu)
        self.unitButtons = [
            self.clearButton, self.recentButton, self.filterButton
        ]
        for button in self.unitButtons:
            button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
            button.setFocusPolicy(Qt.NoFocus)
            unitButtonLayout.addWidget(button)
        unitButtonLayout.addStretch(1)
        self.showHideButtons()

        numberLayout = QGridLayout()
        numberLayout.setVerticalSpacing(3)
        mainLayout.addLayout(numberLayout)
        statusLabel = QLabel(_('Set units'))
        statusLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken)
        mainLayout.addWidget(statusLabel)

        fromNumLabel = QLabel(_('No Unit Set'))
        numberLayout.addWidget(fromNumLabel, 0, 0)
        self.fromNumEdit = numedit.NumEdit(self.fromGroup, self.toGroup,
                                           fromNumLabel, statusLabel,
                                           self.recentUnits, True)
        numberLayout.addWidget(self.fromNumEdit, 1, 0)
        self.fromUnitEdit.unitChanged.connect(self.fromNumEdit.unitUpdate)
        self.fromNumEdit.gotFocus.connect(self.fromUnitEdit.setInactive)
        self.fromNumEdit.gotFocus.connect(self.toUnitEdit.setInactive)
        self.fromNumEdit.gotFocus.connect(self.unitListView.resetFiltering)
        self.fromNumEdit.setEnabled(False)
        equalsLabel = QLabel(' = ')
        equalsLabel.setFont(QFont(self.font().family(), 20))
        numberLayout.addWidget(equalsLabel, 0, 1, 2, 1)

        toNumLabel = QLabel(_('No Unit Set'))
        numberLayout.addWidget(toNumLabel, 0, 3)
        self.toNumEdit = numedit.NumEdit(self.toGroup, self.fromGroup,
                                         toNumLabel, statusLabel,
                                         self.recentUnits, False)
        numberLayout.addWidget(self.toNumEdit, 1, 3)
        self.toUnitEdit.unitChanged.connect(self.toNumEdit.unitUpdate)
        self.toNumEdit.gotFocus.connect(self.fromUnitEdit.setInactive)
        self.toNumEdit.gotFocus.connect(self.toUnitEdit.setInactive)
        self.toNumEdit.gotFocus.connect(self.unitListView.resetFiltering)
        self.toNumEdit.setEnabled(False)
        self.fromNumEdit.convertNum.connect(self.toNumEdit.setNum)
        self.toNumEdit.convertNum.connect(self.fromNumEdit.setNum)
        self.fromNumEdit.convertRqd.connect(self.toNumEdit.convert)
        self.toNumEdit.convertRqd.connect(self.fromNumEdit.convert)

        buttonLayout = QVBoxLayout()  # major buttons
        topLayout.addLayout(buttonLayout)
        closeButton = QPushButton(_('&Close'))
        buttonLayout.addWidget(closeButton)
        closeButton.setFocusPolicy(Qt.NoFocus)
        closeButton.clicked.connect(self.close)
        optionsButton = QPushButton(_('&Options...'))
        buttonLayout.addWidget(optionsButton)
        optionsButton.setFocusPolicy(Qt.NoFocus)
        optionsButton.clicked.connect(self.changeOptions)
        basesButton = QPushButton(_('&Bases...'))
        buttonLayout.addWidget(basesButton)
        basesButton.setFocusPolicy(Qt.NoFocus)
        basesButton.clicked.connect(self.showBases)
        fractionsButton = QPushButton(_('&Fractions...'))
        buttonLayout.addWidget(fractionsButton)
        fractionsButton.setFocusPolicy(Qt.NoFocus)
        fractionsButton.clicked.connect(self.showFractions)
        helpButton = QPushButton(_('&Help...'))
        buttonLayout.addWidget(helpButton)
        helpButton.setFocusPolicy(Qt.NoFocus)
        helpButton.clicked.connect(self.help)
        aboutButton = QPushButton(_('&About...'))
        buttonLayout.addWidget(aboutButton)
        aboutButton.setFocusPolicy(Qt.NoFocus)
        aboutButton.clicked.connect(self.about)
        buttonLayout.addStretch()

        if self.option.boolData('RemenberDlgPos'):
            xSize = self.option.intData('MainDlgXSize', 0, 10000)
            ySize = self.option.intData('MainDlgYSize', 0, 10000)
            if xSize and ySize:
                self.resize(xSize, ySize)
            self.move(self.option.intData('MainDlgXPos', 0, 10000),
                      self.option.intData('MainDlgYPos', 0, 10000))
        if self.option.boolData('LoadLastUnit') and len(self.recentUnits) > 1:
            self.fromGroup.update(self.recentUnits[0])
            self.fromUnitEdit.unitUpdate()
            self.toGroup.update(self.recentUnits[1])
            self.toUnitEdit.unitUpdate()
            self.unitListView.updateFiltering()
            self.fromNumEdit.setFocus()
            self.fromNumEdit.selectAll()
        if self.option.boolData('ShowStartupTip'):
            self.show()
            tipDialog = TipDialog(self.option, self)
            tipDialog.exec_()
コード例 #25
0
    def __init__(self, gamma=0.9):
        self.options = \
         [Option("left"), Option("up"), Option("right"), Option("down"),
          Option("topleft->topright"), Option("topleft->botleft"),
          Option("topright->topleft"), Option("topright->botright"),
          Option("botleft->topleft"), Option("botleft->botright"),
          Option("botright->botleft"), Option("botright->topright")]

        self.gamma = gamma
        self.current_option = None
        # Keep track of action number corresponding to last action taken
        self.last_action_taken = None

        n_states = 13 * 13
        n_options = len(self.options)
        self.R = np.zeros((n_states, n_options))
        self.P = np.zeros((n_states, n_options, n_states))
        self.N = np.zeros((n_states, n_options))
コード例 #26
0
ファイル: main.py プロジェクト: tony9402/BOJ-Auto
import json
import time
from boj import Boj
from option import Option
from git import Git

sess = requests.Session()

if __name__ == "__main__":
    #python main.py 1000.cpp 1000 | python main.py filename problem_number
    if len(sys.argv) != 3:
        print("\nError Input")
        print("ex) python main.py (filename) (problem number)\n")
        exit(1)

    option = Option()
    error, result = Option().run()
    if error:
        exit(1)

    boj = Boj(sess, result, sys.argv)
    result = boj.run()
    
    if result:
        print("Wrong Answer")
        exit(2)
    
    git = Git(boj)
    error, result = git.run()
    if error:
        print(result)
コード例 #27
0
if __name__ == '__main__':

    import h5py
    from rttov_gui_f2py import rttov_gui_load, rttov_gui_get_emisbrdf
    from profile import Profile, getNumberOfProfiles
    from option import Option
    from reflectance import Reflectance

    fileName = "../rttov_tests/AA_preproCf_44L.H5"

    # Lecture du profil numero 2 et des options
    nprof = getNumberOfProfiles(fileName)
    print "number of profiles found :", nprof

    p1 = Profile()
    o1 = Option()

    iprof = 2
    p1.loadProfileNumber(file, iprof)

    f = h5py.File(file, 'r')
    h5 = f['/OPTIONS/']
    o1.loadh5(h5)
    f.close()

    # changer latitude longitude date et type de surface
    p1['LATITUDE'] = 45.0
    p1['LONGITUDE'] = 5.0
    p1['DATE'] = (2012, 7, 1)
    p1['SKIN']['SURFTYPE'] = 0
    p1['AZANGLE'] = 45.0
コード例 #28
0
def main(user, executeTrades, timeInterval, test):
    # TODO: use executeTrades flag to decide whether to trade automatically
    # TODO: execute trades automatically if profit > margin or delta gap > margin
    # TODO: setup tracking for a purchased strangle (i.e. email if profit > margin, or earnings is the next day, or delta spread is large)
    # TODO: analysis tools (option price vs xsigma over time, line for stock price, bar for earnings date), (option prices at different strikes over time), (option price vs delta over time)

    if test:
        print("--------------TEST MODE--------------")

    print(user, executeTrades, timeInterval)
    while True:
        cal = USTradingCalendar()
        eastern = timezone("US/Eastern")
        currentTime = datetime.datetime.now(eastern)
        currentDate = datetime.date.today()
        easternHour = currentTime.hour
        easternMinute = currentTime.minute
        isDuringMarketHours = (easternHour == 6 and easternMinute > 30) or (
            easternHour > 6 and easternHour < 16)
        isWeekday = currentDate.isoweekday() in range(1, 6)
        isTradingHoliday = currentDate in cal.holidays(
            start=currentDate, end=currentDate + datetime.timedelta(days=1))
        if (not isDuringMarketHours or not isWeekday
                or isTradingHoliday) and (not test):
            print(datetime.datetime.now())
            print(
                "It is either not during market hours or is a holiday. Sleeping until next observation..."
            )
            time.sleep(60 * timeInterval)
            continue

        if not test:
            print("Connecting to IB...")
            ib = ibUtils.connect()

        for symbol in TESTING_WATCH_LIST:
            print("\nSymbol:", symbol)
            print(datetime.datetime.now())
            print("Getting contract...")
            if not test:
                contract = ibUtils.getStockQualifiedContract(symbol, ib)
            print("Getting ticker...")
            if not test:
                ticker = ibUtils.getTicker(contract, ib)
            print("Getting earnings date...")
            if not test:
                earningsDate = ibUtils.getNextEarningsDate(contract, ib)
                print("..................................")
            else:
                earningsDate = datetime.date(2018, 10, 23)

            if not test:
                stockPrice = ticker.marketPrice()
                print("Getting option details...")
                nextExpiry, optionTickers = ibUtils.getOptions(
                    contract, stockPrice, earningsDate, ib)
            else:
                stockPrice = 23.53
                nextExpiry = datetime.date(2018, 11, 16)

            hv2yr = get2yrVolatility(symbol)
            stock = Stock(symbol, stockPrice)

            if not test:
                options = []
                for optionTicker in optionTickers:
                    options.append(
                        Option(hv2yr, optionTicker.contract.strike,
                               optionTicker.contract.right == 'C',
                               optionTicker.bid, optionTicker.ask, nextExpiry))
            else:
                options = [
                    Option(hv2yr, 22.0, True, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 23.0, True, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 24.0, True, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 25.0, True, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 22.0, False, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 23.0, False, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 24.0, False, 3.30, 3.35, nextExpiry),
                    Option(hv2yr, 25.0, False, 3.30, 3.35, nextExpiry)
                ]
            for option in options:
                option.setDaySigma(stock)
                option.setDelta(stock, hv2yr)
                option.setTimeDecay(stock)

            # TODO: compute delta for options

            cwd = os.getcwd()
            if not test:
                traderPath = os.path.join(cwd, user)

            else:
                testPath = os.path.join(cwd, "test")
                traderPath = os.path.join(testPath, user)
                testExists = os.path.isdir(testPath)
                if not testExists:
                    os.mkdir(testPath)

            stockPath = os.path.join(traderPath, symbol)
            earningsDatePath = os.path.join(stockPath,
                                            earningsDate.strftime("%d%b%Y"))
            expiryDatePath = os.path.join(earningsDatePath,
                                          nextExpiry.strftime("%d%b%Y"))

            traderExists = os.path.isdir(traderPath)
            stockExists = os.path.isdir(stockPath)
            earningsDateExists = os.path.isdir(earningsDatePath)
            expiryDateExists = os.path.isdir(expiryDatePath)

            if not traderExists:
                os.mkdir(traderPath)

            if not stockExists:
                os.mkdir(stockPath)

            if not earningsDateExists:
                os.mkdir(earningsDatePath)

            if not expiryDateExists:
                os.mkdir(expiryDatePath)

            for option in options:
                if option.daySigma == None:
                    print("DaySIgma")
                    continue
                putCall = "call" if option.call else "put"
                optionPath = os.path.join(
                    expiryDatePath,
                    putCall + "_" + str(option.strike) + ".csv")
                optionExists = os.path.exists(optionPath)
                date = datetime.datetime.now().strftime("%d%b%Y%H%M%S")
                if not optionExists:
                    df = pd.DataFrame(columns=[
                        "Datetime", "StockPrice", "OptionPrice", "XSigma",
                        "Delta", "TimeDecayOneDay"
                    ])
                    df.to_csv(optionPath, index=False)

                df = pd.read_csv(optionPath)
                df = df.append(pd.Series(
                    {
                        "Datetime": date,
                        "StockPrice": stock.currentPrice,
                        "OptionPrice": option.cost,
                        "XSigma": option.daySigma / hv2yr,
                        "Delta": option.delta,
                        "TimeDecayOneDay": option.timeDecay
                    },
                    name=date),
                               ignore_index=True)
                df.to_csv(optionPath, index=False)

        ib.disconnect()
        print("Sleeping between observations...\n")
        ib.sleep(60 * timeInterval)
コード例 #29
0
ファイル: plot_curve.py プロジェクト: zhxsking/unet_on_jsj
# -*- coding: utf-8 -*-
"""
Created on Wed Mar 20 19:47:43 2019

@author: zhxsking
"""

import torch
import matplotlib.pyplot as plt
import numpy as np

from option import Option

opt = Option()
state1 = torch.load(r"data\{}\final-unet.pkl".format(opt.name))
state2 = torch.load(r"data\{}\best-unet.pkl".format(opt.name))

loss_list_train = state1['loss_list_train']
loss_list_val = state1['loss_list_val']
dice_list_train = state1['dice_list_train']
dice_list_val = state1['dice_list_val']

best_dice = state2['best_dice']
best_epoch = state2['best_epoch']

#%% 画训练模型loss及dice图
fig = plt.figure(figsize=(20, 8))

plt.subplot(121)
plt.plot(np.arange(1, 101), loss_list_train)
plt.plot(np.arange(1, 101), loss_list_val)
コード例 #30
0
ファイル: test_option.py プロジェクト: mahmoudimus/option
def test_no_init(is_some):
    with pytest.raises(TypeError):
        if is_some:
            Option(1, True)
        else:
            Option(None, False)