-2

forループのすべての数値をリストに入力するにはどうすればよいですか?

例えば:

for i in range(0, 5):
    # I want to produce this list: [0,1,2,3,4]
4

5 に答える 5

4

Pythonインタープリターを開き、次のように入力します。

range(0,5)

結果はあなたを驚かせるかもしれません。http://docs.python.org/library/functions.html#rangeをお読みください。

于 2012-07-28T14:41:39.993 に答える
1
def naturalNumbers(n): 
  return range(1,n+1)

Python 3の場合、

def naturalNumbers(n): 
  return list(range(1,n+1))
于 2012-07-28T14:34:10.733 に答える
1

Felixは正しいです、range(N、M)関数を使用するだけです。ドキュメント(http://docs.python.org/library/functions.html#range)から、最初の文は次のように述べています。

これは、等差数列を含むリストを作成するための用途の広い関数です。

サンプルコードから、使用方法をすでに知っていますが、リストが返され、forループ自体の一部ではないことに気づいていませんでした。

于 2012-07-28T14:42:40.210 に答える
1

問題は、それらの数字をリストに入力する方法がわからないことです

このlist(range(1, n+1))アプローチはすでにあなたができる最善のことですが、後で別のリストを作成できるように、私はまだその質問に答えたいと思います。

> myList = [] # create an empty list
> myList.append(2) # append 2 to the list
> myList
[2]
>>> myList += [1] # concat with a single-item list
>>> myList
[2, 1]
>>> for i in range(3, 10, 2): # add multiple items
        myList.append(i)

>>> myList
[2, 1, 3, 5, 7, 9]
于 2012-07-28T15:00:09.770 に答える
0

答えはまだ明示的に与えられていないので:

myList = list(range(0,5))
于 2012-07-28T15:09:01.603 に答える