IndentationError: expected an indented block but it's there

Michael Torrie torriem at gmail.com
Tue May 28 11:55:52 EDT 2013


On 05/28/2013 09:32 AM, JackM wrote:
> Having a problem getting a py script to execute. Got this error:
> 
> File "/scripts/blockIPv4.py", line 19
>      ip = line.split(';')[0]
>       ^
> IndentationError: expected an indented block
> I'm perplexed because the code that the error refers to *is* indented:
> with open('/var/www/html/mydomain.com/banlist.txt','r') as inFile:
>      for line in inFile.readlines():
>          ip = line.split(';')[0]
>          output = os.popen( '/etc/sysconfig/iptables -A INPUT -s ' + ip 
> + ' -j REJECT' )
>          logFile.write(ip+' - Has been blocked\n')
> 
> 
> What am I missing here?

Indentation has to be consistent.  likely the for line is indented with
spaces and the next line with a tab.  You can use tabs and spaces, but
you have to be consistent with how you use them.  IE if level 1 is
indented with spaces, then level 2 has to be indented with spaces up to
level 1 as well.  Hope that makes sense.






More information about the Python-list mailing list