我收到错误" IndentationError:预计会出现缩进块"
第3行 answer = subprocess.check_output([' /home/dir/final/3.sh'])
我的代码是:
import subprocess
while True:
answer = subprocess.check_output(['/home/dir/final/3.sh'])
final = int(answer) // int('1048576')
print final
3.sh结果ex" 493281734"
答案 0 :(得分:1)
在文档术语中,缩进是指从行距到行中字符开头的距离。
Python使用缩进。在您的代码中,虽然这是一个条件,但要执行为true的所有代码块必须从空白处开始在同一位置,并且必须比该条件离空白处更远。
Python的新手。我也遇到了这个错误。
示例:
if __name__ == '__main__':
a = int(input())
b = int(input())
if a>=1 and a<=10000000000 and b>=1 and b<=10000000000:
print(a+b)
print(a-b)
print(a*b)
将抛出“ IndentationError:预期为缩进的块(solution.py,第5行)”
修复:
if __name__ == '__main__':
a = int(input())
b = int(input())
if a>=1 and a<=10000000000 and b>=1 and b<=10000000000:
print(a+b)
print(a-b)
print(a*b)
答案 1 :(得分:0)
第3 - 5行应该是ident - 每行使用标签
答案 2 :(得分:0)
Python需要缩进来指示在for循环下有条件的代码,while循环,if和else语句等。通常,这是在冒号之前依赖逻辑运行的代码。
大多数编码人员使用四个空格进行缩进。
标签是一个坏主意,因为如果在不同的编辑器中间距,它们可能会创建不同的数量。如果您将带标签的缩进与间隔缩进混合,它们也可能会造成混淆。如果您使用的是Eclipse或Eric等IDE,则可以配置按Tab键时IDE将插入的空格数。
我认为你的代码应该是:
import subprocess
while True:
answer = subprocess.check_output(['/home/dir/final/3.sh'])
final = int(answer) // int('1048576')
print final