Changing Lutz's mydir from Edition 2, Learning Python
W. eWatson
wolftracks at invalid.com
Sun Jan 17 17:15:22 EST 2010
Chris Rebert wrote:
> On Sun, Jan 17, 2010 at 12:11 PM, W. eWatson <wolftracks at invalid.com> wrote:
>> See Subject. The code is below with a few changes I made at the bottom by
>> inserting
>> import string
>> import numpy
>>
>> module = raw_input("Enter module name: ")
>> listing(module)
>
> As the error says, strings have no __name__ attribute; from this, one
> can infer that listing() expects a module object, not a string which
> is the name of a module.
>
> Try instead:
> module = __import__(raw_input("Enter module name: "))
> listing(module)
>
> Cheers,
> Chris
> --
> http://blog.rebertia.com
>
>> I thought I'd see if I could convert this to a program instead, which asks
>> the user for the module.
>>
...
>> File "C:/Sandia_Meteors/Sentinel_Development/Learn_Python/mydir_pgm.py",
>> line 31, in <module>
>> listing(module)
>> File "C:/Sandia_Meteors/Sentinel_Development/Learn_Python/mydir_pgm.py",
>> line 8, in listing
>> print "name:", module.__name__, "file:", module.__file__
>> AttributeError: 'str' object has no attribute '__name__
Very cool. Thanks to both of you.
More information about the Python-list
mailing list