-2
i = 0
numbers = []

while i < 6:
    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

forループのみを使用して正確な出力を取得するにはどうすればよいですか。私はいくつかのことを試しましたが、それは単に起こりません。それはまったく可能ですか?

4

2 に答える 2

1

コードの最も単純な直訳は次のとおりです。

#!/usr/bin/env python

i = 0
numbers = []

for j in xrange(6):
    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

listこの方法でa を構築する場合、多くの場合、リスト内包表記の方が優れたアプローチです。

#!/usr/bin/env python

numbers = [i for i in xrange(6)]

print "The numbers: "

for num in numbers:
    print num

この場合、コードをさらに単純化できます。

#!/usr/bin/env python

print "The numbers: "
for num in xrange(6):
    print num
于 2013-11-10T06:18:32.677 に答える
0

「正確な出力」だけが必要な場合は、次のようにします。

numbers = []
for i in range(6):
    print("At the top i is %d" %i)
    numbers.append(i)
    print("Numbers now: ", numbers)
    print("At the bottom i is %d" %(i+1))
print("The numbers: ")
[print(num) for num in numbers]

Python3.

于 2013-11-10T06:17:47.083 に答える