On Fri, 05 Mar 2010 00:04:13 -0800, asit wrote: > Consider the following code [snip] > 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 search.py 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: try: 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 continue 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" else: print level, " does NOT have ", perm, "permission" -- Steven -- http://mail.python.org/mailman/listinfo/python-list