我试图从一个文本文件中获取值,我已经读到了一个单独的列表中,我试图找到每个'E'在文本文件中的具体位置。每次使用以下方法打印列表时,它都是空的。我不知道我做错了什么。AGENTS是一个等于6的常数
for a in range(0,2,1):
agentLocations.append([])
for c in range(0,AGENTS,1):
indices = [(i,x) for i, x in enumerate(aMaze) if x == 'E']
agentLocations[a].append(0)
print(indices)
将文件放入其自身列表的代码如下:
^{pr2}$输入的文件看起来像
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~H ~
~ ~
~ ~
~ ~
~# ~
~ ~
~ ~
~ E ~
~ ~
~ ~
~ ~
~ ##### #######~
~ E #E ~
~ # E~
~ # ES ~
~ E ~
~ ~
~ ~
################
我正在查找列表中“E”字符的索引位置。在
我认为问题是你的惊奇没有被正确的建立。这就是为什么我认为。。。在
要调试与打印指示符问题相关的代码,首先需要详细说明列表理解,然后添加打印。在
Zile在数列狮子时发现了这一点。这就是你所期待的吗?这不是我所期望的。在
所以我就印上了《惊喜》。aMaze中有无数个空列表:事实上,输入文件中每个字符对应的行数。(
aMaze.append ([])
在内部循环内,该循环对文件中的每个字符执行行次)。在这似乎不对(我得猜出是什么行)。在
因此,构建aMaze数组的逻辑看起来是错误的,但是很难判断出它有什么问题,因为很难确定其意图。例如,为什么要打印aMaze的行数行成功地打印出迷宫:很明显,有些东西是按照您的预期工作的,这使得您很难理解从您的角度来看哪些是不正确的。在
我的回答和建议是:重新审视一下你是如何构建aMaze的。如果你不能调试它,问一个新的问题,集中在什么给你带来麻烦。在
下面是调试会话后的最终完整代码。在
请注意,我必须猜测aMaze和agentLocations的行数和初始值是多少。我也看不到重复
c
循环AGENTS
次的意义,所以我将AGENTS
设置为1。在这些并不难猜测,但这意味着你还没有掌握MVCE(根据我对你问题的评论)。它将帮助您在这里获得更好的帮助,掌握这一点,并且您会发现创建MVCE的行为通常会在这个过程中呈现出解决方案。在
相关问题 更多 >
编程相关推荐