huwwp / cryptop

command line crypto portfolio
MIT License
235 stars 41 forks source link

Allow user to specify alternate wallet and config filenames as arguments #58

Open ptsand opened 6 years ago

ptsand commented 6 years ago

Issue #43

jgoggan commented 6 years ago

Awesome! I look forward to this being merged into the main!

rpesche commented 6 years ago

You can simplify your function like this:

# Allow user to specify wallet and config filenames as arguments
def handleargs():
    global DATAFILE, CONFFILE
    parser = argparse.ArgumentParser()
    parser.add_argument("-w", "--wallet", type=str, help="Specify wallet filename")
    parser.add_argument("-c", "--config", type=str, help="Specify config filename")
    args = parser.parse_args()

    DATAFILE = os.path.join(BASEDIR, args.wallet or 'wallet.json')
    CONFFILE = os.path.join(BASEDIR, args.config or 'config.ini')

    print ('Wallet path:', str(DATAFILE))
    print ('Config path:', str(CONFFILE))

Or use default value with argparse

# Allow user to specify wallet and config filenames as arguments
def handleargs():
    global DATAFILE, CONFFILE
    parser = argparse.ArgumentParser()
    parser.add_argument("-w", "--wallet", type=str, default='wallet.json' help="Specify wallet filename")
    parser.add_argument("-c", "--config", type=str, default='config.ini' help="Specify config filename")
    args = parser.parse_args()

    print ('Wallet path:', str(DATAFILE))
    print ('Config path:', str(CONFFILE))
ptsand commented 6 years ago

Thanks rpeche. I just pushed a shorter cleaner version of the feature, which are using the globals DATAFILE and CONFFILE as default arguments.