如何在Python中使用append来存储循环中的值
我正在定义一个函数(如何在Python中使用append来存储循环中的值,python,Python,我正在定义一个函数(results),它包含一个for循环,其结果是一个随机数(a)。例如,如果循环运行10次,它将生成10个不同的数字。我想把这些数字存储在循环中的一个列表中,然后打印出来,看看生成了什么数字 我曾想过使用append,尽管我不知道怎么做。到目前为止,这是我的代码,尽管print语句不起作用(我收到一个错误,说我没有正确使用append) .append需要在列表上调用,而不是在a上调用列表也需要在循环外部初始化,以便能够附加。以下是您的方法的固定版本: from random
results
),它包含一个for循环,其结果是一个随机数(a
)。例如,如果循环运行10次,它将生成10个不同的数字。我想把这些数字存储在循环中的一个列表中,然后打印出来,看看生成了什么数字
我曾想过使用append,尽管我不知道怎么做。到目前为止,这是我的代码,尽管print语句不起作用(我收到一个错误,说我没有正确使用append)
.append
需要在列表上调用,而不是在a
上调用<代码>列表也需要在循环外部初始化,以便能够附加
。以下是您的方法的固定版本:
from random import random
def results():
# First, initialize the list so that we have a place to store the random values
items = []
for _ in range(1,10):
# Generate the next value
a = random()
# Add the new item to the end of the list
items.append(a)
# Return the list
return items
在append()
方法上,进一步解释其工作原理
还值得注意的是,range
生成从起始值到(但不包括)停止参数的值。因此,如果您的目的是生成10个值,您应该执行range(0,10)
,因为range(1,10)
只会给您9个值
如果您想更进一步,可以使用来避免同时使用append
,并提供一个参数来指示需要多少随机数:
def results(num=10):
return [random() for _ in range(0, num)]
# produces a list of 10 random numbers (by default)
foo = results()
# produces a list of 20 random numbers
bar = results(20)
.append
需要在列表上调用,而不是在a
上调用<代码>列表也需要在循环外部初始化,以便能够附加
。以下是您的方法的固定版本:
from random import random
def results():
# First, initialize the list so that we have a place to store the random values
items = []
for _ in range(1,10):
# Generate the next value
a = random()
# Add the new item to the end of the list
items.append(a)
# Return the list
return items
在append()
方法上,进一步解释其工作原理
还值得注意的是,range
生成从起始值到(但不包括)停止参数的值。因此,如果您的目的是生成10个值,您应该执行range(0,10)
,因为range(1,10)
只会给您9个值
如果您想更进一步,可以使用来避免同时使用append
,并提供一个参数来指示需要多少随机数:
def results(num=10):
return [random() for _ in range(0, num)]
# produces a list of 10 random numbers (by default)
foo = results()
# produces a list of 20 random numbers
bar = results(20)
append
是您必须在列表中使用的一种方法,因此基本上您会这样做:randomList。append(a)
并且不要忘记在函数开始时预先初始化您的列表:randomList=[]
append
是您必须在列表中使用的一种方法,因此,基本上您可以这样做:randomList.append(a)
,并且不要忘记在函数开始时预先初始化您的列表:randomList=[]
您可以这样做:
import maths
list_with_numbers=[]
def results():
for _ in range(1,10):
a = maths.numbers()
list_with_numbers.append(a)
print(list_with_numbers)
这是显而易见的,但不要忘记所有函数本身。您可以这样做:
import maths
list_with_numbers=[]
def results():
for _ in range(1,10):
a = maths.numbers()
list_with_numbers.append(a)
print(list_with_numbers)
这是显而易见的,但不要忘记所有函数本身。您有一些小错误
- 没有
模块数学
是数字,而不是列表。您应该在列表中添加a
- 在循环结束后调用
,而不是在每次迭代中 从随机导入随机 def results(): 数字=[]print
for _ in range(1,10): a = random() print(a) numbers.append(a) return numbers
- 没有
模块数学
是数字,而不是列表。您应该在列表中添加a
- 在循环结束后调用
,而不是在每次迭代中 从随机导入随机 def results(): 数字=[]print
for _ in range(1,10): a = random() print(a) numbers.append(a) return numbers
- 您有几个小错误
list.append
是一个“就地”操作,返回None
,因此在尝试追加值时不需要赋值。老实说,我想把这个问题命名为“如何使用append?”,顺便说一句,不要像list
那样命名变量,它会把默认名称弄乱。我坚信python不应该允许这些名称覆盖列表。append
是一个“就地”操作,返回None
,因此在尝试追加值时不需要赋值。老实说,我想在旁注中将这个问题命名为“如何使用append?”,不要像list
那样命名变量,因为它会与默认名称混淆。我强烈认为python不应该允许这些名称覆盖“不100%确定是否有必要”——这是不必要的。谢谢!那么什么时候使用“全局”呢?除非明确要求,否则使用global
不是一个好的做法。我不建议在任何地方使用它。“不100%确定是否有必要”-没有必要。谢谢!那么什么时候使用“全局”呢?除非明确要求,否则使用global
不是一个好的做法。我不建议在任何地方使用它。我尝试过,但使用了print(items)
而不是return items
,现在我没有收到错误消息,但没有打印任何内容。。。你知道为什么吗?你收到了什么错误信息?你在调用这个方法吗?您需要这样称呼它:results()
我想是的。。我将编辑我的问题以包括我尝试过的内容,但使用print(items)
而不是return items
,现在我没有收到错误消息,但没有打印任何内容。。。你知道为什么吗?你收到了什么错误信息?你在调用这个方法吗?您需要这样称呼它:results()
我想是的。。我将编辑我的问题以包括我尝试过的内容