我有一个带有条件检查的循环,如果条件为真但仍然继续循环,有没有办法可以退出当前迭代.
dummy = ['One','Two','Three','Four','Five']
for i in dummy:
print('Stage 1')
if i == 'Three':
break
print('Stage 2')
Run Code Online (Sandbox Code Playgroud)
这段代码给了我:
Stage 1
Stage 2
Stage 1
Stage 2
Stage 1
Run Code Online (Sandbox Code Playgroud)
但我想这样:
Stage 1
Stage 2
Stage 1
Stage 2
--------
Stage 1
--------
Stage 1
Stage 2
Stage 1
Stage 2
Run Code Online (Sandbox Code Playgroud)
突出显示的行显示它跳过元素"Three"的第二个print语句.
谢谢
我正在尝试创建一个询问数学方程式的脚本,然后用户必须输入他们认为的答案,然后python会输出答案
但是,由于某些原因,python不喜欢与eval语句相关的raw_input().
例如,代码是:
print "What's 5+4"
a = raw_input()
print eval('5+4')
Run Code Online (Sandbox Code Playgroud)
如果我输入10进入var'a',我会收到此错误消息.
Traceback (most recent call last):
File "/tmp/W1SVH/Math.py", line 3, in <module>
print eval('5 +4')
File "<string>", line 1, in <module>
TypeError: cannot concatenate 'str' and 'int' objects
Run Code Online (Sandbox Code Playgroud)
但是,如果我要用数字'5'替换raw_input,脚本看起来像这样.
print "What's 5+4"
a = 9
print eval('5+4')
Run Code Online (Sandbox Code Playgroud)
然后它将返回9,因此5 + 4 = 9.
有没有解决这个问题,以便我可以使用raw_input()来提示用户?