/
utils.py
63 lines (50 loc) · 2.12 KB
/
utils.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
from glob import glob
import os
def add_moltype_args(parser):
parser.add_argument(
'--protein', dest='protein', action='store_true',
help='choose a protein signature; by default, a nucleotide signature is used'
)
parser.add_argument(
'--no-protein', dest='protein', action='store_false',
help='do not choose a protein signature')
parser.set_defaults(protein=False)
parser.add_argument(
'--dayhoff', dest='dayhoff', action='store_true',
help='build Dayhoff-encoded amino acid signatures'
)
parser.add_argument(
'--no-dayhoff', dest='dayhoff', action='store_false',
help='do not build Dayhoff-encoded amino acid signatures')
parser.set_defaults(dayhoff=False)
parser.add_argument(
'--hp', '--hydrophobic-polar', dest='hp', action='store_true',
help='build hydrophobic-polar-encoded amino acid signatures'
)
parser.add_argument(
'--no-hp', '--no-hydrophobic-polar', dest='hp', action='store_false',
help='do not build hydrophobic-polar-encoded amino acid signatures')
parser.set_defaults(hp=False)
parser.add_argument(
'--dna', '--rna', dest='dna', default=None, action='store_true',
help='choose a nucleotide signature (default: True)')
parser.add_argument(
'--no-dna', '--no-rna', dest='dna', action='store_false',
help='do not choose a nucleotide signature')
parser.set_defaults(dna=None)
def add_construct_moltype_args(parser):
add_moltype_args(parser)
parser.set_defaults(dna=True)
def add_ksize_arg(parser, default=31):
parser.add_argument(
'-k', '--ksize', metavar='K', default=None, type=int,
help='k-mer size; default={d}'.format(d=default)
)
def opfilter(path):
return not path.startswith('__') and path not in ['utils']
def command_list(dirpath):
paths = glob(os.path.join(dirpath, '*.py'))
filenames = [os.path.basename(path) for path in paths]
basenames = [os.path.splitext(path)[0] for path in filenames if not path.startswith('__')]
basenames = filter(opfilter, basenames)
return sorted(basenames)