我正在尝试编写一个简单的程序,它将从键盘读取为sys.stdin.readline()
我正试图在' for'循环为
@Column(name="codsal", nullable=false)
public Long getCodsal() {
return codsuc;
}
public void setCodsal(Long codsal) {
this.codsuc = codsal;
}
问题是 1)for循环没有执行。它在第一次输入后退出 2)当输入停止时,if语句没有被命中 3)如果我输入" hi"然后点击ctrl + D我看到输出为 " H" " I"
我可以通过while循环实现我的目标,如下所示但是如何在For循环中执行?
import sys
for line in sys.stdin.readline().strip("\n"):
if(line == 'stop'):
break
print(line)
答案 0 :(得分:0)
它在第一次交互后停止,因为您在for循环的定义中指定了迭代的值。你可以这样看
解释器中sys.stdin.readline()
。这意味着你的循环等同于
for line in <first entered line>:
do things
在你的while循环中,它会不断要求更多输入,因此你的代码可以运行。