愚かな法学Pythonの練習問題33:while循環
2410 ワード
while
サイクルを関数に変更し、試験条件(i < 6)
の6を変数に変換する.def whifunc(a):
i = 0
numbers = []
while i < a:
print "At the top i is %d" % i
numbers.append(i)
i = i + 1
print "Numbers now: ",numbers
print "At the bottom i is %d" % i
print "The numbers: "
for num in numbers:
print num
whifunc(int(raw_input('a= ')))
+1
を定義するために使用される関数に別のパラメータを追加します.これにより、任意の値を追加することができます.def whifunc(a, s):
i = 0
numbers = []
while i < a:
print "At the top i is %d" % i
numbers.append(i)
i = i + s
print "Numbers now: ",numbers
print "At the bottom i is %d" % i
print "The numbers: "
for num in numbers:
print num
whifunc(int(raw_input('a= ')), int(raw_input('s= ')))
for-loop
とrange
を使用して、このスクリプトをもう一度書きます.中間の加算操作が必要ですか?それを取り除かないと、どんな結果になりますか?def whifunc(a, s):
i = 0
numbers = []
for i in range (0, a):
print "At the top i is %d" % i
numbers.append(i)
i = i + s
print "Numbers now: ",numbers
print "At the bottom i is %d" % i
print "The numbers: "
for num in numbers:
print num
whifunc(int(raw_input('a= ')), int(raw_input('s= ')))
このようにする時stepは更新しないことを発見して、結果はやはり+1と同じで、そこで資料を探して、for循環が3つのパラメータを追加することができることを発見して、開始値、終了値、step、このように+stepすることができて、しかもi=i+sのこの行は必要ありません.def whifunc(a, s):
i = 0
numbers = []
for i in range (0, a, s):
print "At the top i is %d" % i
numbers.append(i)
# i = i + s
print "Numbers now: ",numbers
print "At the bottom i is %d" % i
print "The numbers: %s" % numbers
""" , 。"""
# for num in numbers:
# print num
私はまた関数の中にいない情況をテストして、直接元のコードを持って直して、第3のパラメータが1で、i=i+sの中のs値と同じで、第3のパラメータを加えない効果と同じi = 0
numbers = []
for i in range (0, 6, 1):
print "At the top i is %d" % i
numbers.append(i)
i = i + 1
print "Numbers now: ", numbers
print "At the bottom i is %d" % i
print "The numbers: "
for num in numbers:
print num
しかし第3のパラメータとs値が異なる時、第3のパラメータはprint“At the top i is%d”%iの1行の値を制御して、s値はprint“At the bottom i is%d”%iの1行の値を制御して、互いに独立しました.どうしてですか.