File tree Expand file tree Collapse file tree 4 files changed +58
-10
lines changed
Expand file tree Collapse file tree 4 files changed +58
-10
lines changed Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ def get_args():
99 """get command-line arguments"""
1010
1111 parser = argparse .ArgumentParser (
12- description = 'Gashlycrumb' ,
12+ description = 'Interactive Gashlycrumb' ,
1313 formatter_class = argparse .ArgumentDefaultsHelpFormatter )
1414
1515 parser .add_argument ('-f' ,
@@ -35,10 +35,8 @@ def main():
3535 if letter == '!' :
3636 print ('Bye' )
3737 break
38- elif letter .upper () in lookup :
39- print (lookup [letter .upper ()])
40- else :
41- print ('I do not know "{}".' .format (letter ))
38+
39+ print (lookup .get (letter .upper (), f'I do not know "{ letter } ".' ))
4240
4341
4442# --------------------------------------------------
Original file line number Diff line number Diff line change @@ -14,14 +14,14 @@ def get_args():
1414
1515 parser .add_argument ('letter' ,
1616 help = 'Letter(s)' ,
17- metavar = 'str ' ,
17+ metavar = 'letter ' ,
1818 nargs = '+' ,
1919 type = str )
2020
2121 parser .add_argument ('-f' ,
2222 '--file' ,
2323 help = 'Input file' ,
24- metavar = 'str ' ,
24+ metavar = 'FILE ' ,
2525 type = argparse .FileType ('r' ),
2626 default = 'gashlycrumb.txt' )
2727
@@ -33,7 +33,10 @@ def main():
3333 """Make a jazz noise here"""
3434
3535 args = get_args ()
36- lookup = {line [0 ].upper (): line .rstrip () for line in args .file }
36+
37+ lookup = {}
38+ for line in args .file :
39+ lookup [line [0 ].upper ()] = line .rstrip ()
3740
3841 for letter in args .letter :
3942 if letter .upper () in lookup :
Original file line number Diff line number Diff line change 1+ #!/usr/bin/env python3
2+ """Lookup tables"""
3+
4+ import argparse
5+
6+
7+ # --------------------------------------------------
8+ def get_args ():
9+ """get command-line arguments"""
10+
11+ parser = argparse .ArgumentParser (
12+ description = 'Gashlycrumb' ,
13+ formatter_class = argparse .ArgumentDefaultsHelpFormatter )
14+
15+ parser .add_argument ('letter' ,
16+ help = 'Letter(s)' ,
17+ metavar = 'letter' ,
18+ nargs = '+' ,
19+ type = str )
20+
21+ parser .add_argument ('-f' ,
22+ '--file' ,
23+ help = 'Input file' ,
24+ metavar = 'FILE' ,
25+ type = argparse .FileType ('r' ),
26+ default = 'gashlycrumb.txt' )
27+
28+ return parser .parse_args ()
29+
30+
31+ # --------------------------------------------------
32+ def main ():
33+ """Make a jazz noise here"""
34+
35+ args = get_args ()
36+ lookup = {line [0 ].upper (): line .rstrip () for line in args .file }
37+
38+ for letter in args .letter :
39+ if letter .upper () in lookup :
40+ print (lookup [letter .upper ()])
41+ else :
42+ print (f'I do not know "{ letter } ".' )
43+
44+
45+ # --------------------------------------------------
46+ if __name__ == '__main__' :
47+ main ()
Original file line number Diff line number Diff line change @@ -14,14 +14,14 @@ def get_args():
1414
1515 parser .add_argument ('letter' ,
1616 help = 'Letter(s)' ,
17- metavar = 'str ' ,
17+ metavar = 'letter ' ,
1818 nargs = '+' ,
1919 type = str )
2020
2121 parser .add_argument ('-f' ,
2222 '--file' ,
2323 help = 'Input file' ,
24- metavar = 'str ' ,
24+ metavar = 'FILE ' ,
2525 type = argparse .FileType ('r' ),
2626 default = 'gashlycrumb.txt' )
2727
You can’t perform that action at this time.
0 commit comments