为什么以下工作正常? String str; while (condition) { str = calculateStr(); ….. } 但是这个被认为是危险的/不正确的: while (condition) { String str = calculateStr(); ….. } 是否有必要在循环之外声明variables?
在下面的程序中,如果我在第一个if语句中将variables$foo设置为值1,它的作用就是在if语句之后记住它的值。 然而,当我设置相同的variables值为2, if这是一个while语句内,它被遗忘后的while循环。 它的行为就像我在while循环中使用某种variables$foo的副本,我只修改那个特定的副本。 这是一个完整的testing程序: #!/bin/bash set -e set -u foo=0 bar="hello" if [[ "$bar" == "hello" ]] then foo=1 echo "Setting \$foo to 1: $foo" fi echo "Variable \$foo after if statement: $foo" lines="first line\nsecond line\nthird line" echo -e $lines | while read line do if [[ "$line" == "second line" ]] then foo=2 […]
我正在尝试使用OpenCV实时绘制摄像机的一些数据。 然而,实时绘图(使用matplotlib)似乎没有工作。 我已经把这个问题分成了这个简单的例子: fig=plt.figure() plt.axis([0,1000,0,1]) i=0 x=list() y=list() while i <1000: temp_y=np.random.random() x.append(i) y.append(temp_y) plt.scatter(i,temp_y) i+=1 plt.show() 我希望这个例子可以单独绘制1000点。 实际情况是,窗口popup第一个点(确定),然后等待循环完成,然后填充graphics的其余部分。 有什么想法,为什么我一次没有看到一个人口点?