Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about Collectives
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about Teams
Why am I getting no attribute
__getitem__
error for dictionary:
Traceback (most recent call last):
File "./thumbnail.py", line 39, in <module>
main()
File "./thumbnail.py", line 19, in main
options['input_pattern']
AttributeError: Values instance has no attribute '__getitem__'
Here's the code:
#!/usr/bin/env python
import os, sys, glob
from PIL import Image
from optparse import OptionParser
def batch_convert(src_dir, input_pattern, output_ext = None, dest_dir = None):
return 0
def main():
print sys.argv
parser = OptionParser()
parser.add_option("-s", "--source-dir", dest="src_dir", help="Source directory to fetch images")
parser.add_option("-d", "--dest-dir", dest="dest_dir", help="Destination directory to writen processed images")
parser.add_option("-i", "--input-pattern", dest="input_pattern", help="Look for files that match some pattern. E.g. *.png or pic*cool*")
parser.add_option("-o", "--output-format", dest="output_ext", help="Output format to save all images. If empty, original format of images is preserved")
(options, args) = parser.parse_args()
print options
options['input_pattern']
if __name__ == "__main__":
main()
As another user said, options is not a dictionary. I made this mistake myself.
If I have an option
--file FILE
Then I can call
option.file
which returns FILE. It's that easy!
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.