indentation error

Steven D'Aprano steve at
Fri Mar 5 12:48:35 CET 2010

On Fri, 05 Mar 2010 00:04:13 -0800, asit wrote:

> Consider the following code
> According to me, indentation is ok. but the python interpreter gives an
> indentation error

You can trust the interpreter. There *is* an indentation error. Most 
likely you have mixed spaces and tabs. Try:

python -t -t

instead. (Yes, -t twice.)

On an unrelated note, your code snippet shows a very poor coding style. 
Firstly, bare "except" clauses are VERY bad practice: it will mask bugs 
in your code. Secondly, you should wrap the smallest amount of code in 
the try block as you need.

Something like this is probably better:

pattern = raw_input("Enter the file pattern to search for :\n")
commandString = "find " + pattern
commandOutput = commands.getoutput(commandString)
findResults = string.split(commandOutput, "\n")
print "Files : "
print commandOutput
print "============================="
for file in findResults:
        mode = stat.S_IMODE(os.lstat(file)[stat.ST_MODE])
    except (IOError, OSError):
        # Print a useless error message so your users will hate you.
        print "There was a problem with %s" % file
    print "\nPermissions for file", file, ":"
    for level in "USR", "GRP", "OTH":
        for perm in "R", "W", "X":
            if mode & getattr(stat,"S_I"+perm+level):
                print level, " has ", perm, " permission"
                print level, " does NOT have ", perm, "permission"


More information about the Python-list mailing list