gpt4 book ai didi

python - 我想在 def 中分配新变量

转载 作者:行者123 更新时间:2023-12-04 01:17:58 26 4
gpt4 key购买 nike

我想在 def 中创建新变量,但不推荐这样做。 https://stackoverflow.com/questions/30517398/creating-a-new-variable-using-the-def-command-in-python\我要运行的代码如下,

# I imported some libraries,
from bindsnet.network.nodes import Input
import bindsnet
network = Network()

# then I create new variable "input_layer"
input_layer = Input(n=100)
network.add_layer(layer=input_layer, name="A")

现在,我需要创建很多输入层。
所以,我想把它做成一个与上面完全一样的 def,以便于重复。
像这样

def test_add_network(layer_name, node_type, n, node_name):
layer_name = node_type(n)
network.add_layer(layer = node_type, name = node_name)

# then run,
test_add_network(input_layer_test, Input, 100, "A")

我得到了错误,

NameError: name 'input_layer_test' is not defined 

我明白这个错误想说什么了。
在这里我遇到同样的问题,(之前粘贴) creating a new variable using the def command in python

我该如何解决这个问题

最佳答案

您无需传入要创建的变量的名称。相反,返回您的函数的新值并将其分配给调用范围内的变量名称:

def test_add_network(node_type, n, node_name):
layer_name = node_type(n)
network.add_layer(layer = node_type, name = node_name)
return layer_name

# then run,
input_layer_test = test_add_network(Input, 100, "A")

关于python - 我想在 def 中分配新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63024540/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com