2024-04-24 09:48:37 发布
网友
以下代码片段有效:
param = {} for nround_counter in [1,2,3]: { print(nround_counter) #param = {'objective' : 'multi:softmax'} }
但以下内容没有:
给出的错误是无效语法。我对Python不熟悉,需要帮助调试上面的内容。在
谢谢。在
你在这里混淆了很多不同的问题。在
下面是您的第一个示例,使用通常用于Python的空白呈现:
#!python3 param = {} for nround_counter in [1,2,3]: { print(nround_counter) }
注意,这是对一系列语句的迭代,语句被编码成一个set-literal构造函数表达式(无用且令人困惑),因为它的副作用而被调用(调用print函数)。它没有修改任何状态,但是在循环的每次迭代中,它被作为一个集合来计算,其中包含None单例作为其唯一的元素。在
None
这不是一种特殊的语法。这只是Python的set-literal构造语法的不可理解的用法。在
也完全不清楚你要达到什么目的。在一个列表上循环不断地将param反复绑定到相同的字面字典内容是没有意义的。在
param
如果你想建一个表格呢?在
。。。或者类似的事情。注意,我用dict()而不是文本{}初始化{},因为我认为如果稍微详细一点,它会更干净、更清晰。另外,我使用range(1,4)而不是你的文字列表,同样因为它更干净。我在这个循环的主体中所做的是愚蠢的,但这是一个你可以做什么的例子。在
dict()
{}
range(1,4)
请注意,我为每个循环生成一个唯一的键(一个常量字符串文本,其中包含迭代器变量的字符串表示形式)。人们通常会期望这些值也会以某种方式动态计算或推导出来;但我不知道是怎么回事,因为脑海中没有清晰的教学实例。在
在Python中,循环、函数、类等代码体不会用大括号括起来。缩进是决定代码结构的因素。在
for nround_counter in [1, 2, 3]: print(nround_counter) param = {'object' : 'multi:softmax'}
你在这里混淆了很多不同的问题。在
下面是您的第一个示例,使用通常用于Python的空白呈现:
注意,这是对一系列语句的迭代,语句被编码成一个set-literal构造函数表达式(无用且令人困惑),因为它的副作用而被调用(调用print函数)。它没有修改任何状态,但是在循环的每次迭代中,它被作为一个集合来计算,其中包含
None
单例作为其唯一的元素。在这不是一种特殊的语法。这只是Python的set-literal构造语法的不可理解的用法。在
也完全不清楚你要达到什么目的。在一个列表上循环不断地将
param
反复绑定到相同的字面字典内容是没有意义的。在如果你想建一个表格呢?在
^{pr2}$。。。或者类似的事情。注意,我用},因为我认为如果稍微详细一点,它会更干净、更清晰。另外,我使用
dict()
而不是文本{}
初始化{range(1,4)
而不是你的文字列表,同样因为它更干净。我在这个循环的主体中所做的是愚蠢的,但这是一个你可以做什么的例子。在请注意,我为每个循环生成一个唯一的键(一个常量字符串文本,其中包含迭代器变量的字符串表示形式)。人们通常会期望这些值也会以某种方式动态计算或推导出来;但我不知道是怎么回事,因为脑海中没有清晰的教学实例。在
在Python中,循环、函数、类等代码体不会用大括号括起来。缩进是决定代码结构的因素。在
相关问题 更多 >
编程相关推荐