在Python 2.7类中搜索2D数组
我会用我是一个新手的事实来描述这一点 Python和我正在尝试编写一个类。我想要实现的是让类根据用户输入打开一组文本文件中的一个。文本文件包含如下信息:在Python 2.7类中搜索2D数组,python,arrays,python-2.7,Python,Arrays,Python 2.7,我会用我是一个新手的事实来描述这一点 Python和我正在尝试编写一个类。我想要实现的是让类根据用户输入打开一组文本文件中的一个。文本文件包含如下信息: 20,21,22 23,24,25 26,27,28 文本文件将作为二维数组读取。从该数组中读取一个值并分配给一个新变量,以便打印该变量并在以后的计算中使用。在课外,我可以毫不费力地做到这一点,但在课堂上实现这一点令人沮丧。以下是迄今为止我为Python 2.7编写的代码: im_new = [] class Read(object)
20,21,22
23,24,25
26,27,28
文本文件将作为二维数组读取。从该数组中读取一个值并分配给一个新变量,以便打印该变量并在以后的计算中使用。在课外,我可以毫不费力地做到这一点,但在课堂上实现这一点令人沮丧。以下是迄今为止我为Python 2.7编写的代码:
im_new = []
class Read(object):
def __init__(self, agev, table, row, col, newvar):
self.agevar = agev
self.table = table
self.row = row
self.col = col
self.newvar = newvar
display_list = []
with open(self.table + str(self.agevar) + ".txt", "r") as data_file:
for line in data_file:
display_list.append(line.strip().split(','))
def __str__(self):
self.newvar = (display_list[self.row][self.col])
immem = Read(40, "im", 1, 2, im_new)
print "Immediate Memory: " % im_new
理想情况下,参考示例文本文件,输出将是“即时内存:25”,但我得到的输出是“即时内存:”并且当我在控制台中打印值im_new时,我得到“[]”。我肯定我错过了一些很明显的东西。任何帮助都将不胜感激。提前感谢。您的代码有问题,无法运行。我试图修复:
im_new = []
class Read(object):
def __init__(self, agev, table, row, col, newvar):
self.agevar = agev
self.table = table
self.row = row
self.col = col
self.newvar = newvar
self.display_list = []
with open(self.table + str(self.agevar) + ".txt", "r") as data_file:
for line in data_file:
self.display_list.append(line.strip().split(','))
def __str__(self):
self.newvar = (self.display_list[self.row][self.col])
return self.newvar
immem = Read(40, "im", 1, 2, im_new)
print "Immediate Memory: ", immem
这将返回
即时内存:25
与您期望的一样,但我不确定这是您想要的。我不太理解您的问题,但请尝试打印“即时内存”:%imem.newvar
谢谢您的帮助。我对您建议的代码进行了更改,但没有与输出一致。我同意,也许我没有解释我做得好的地方。我将修改我的问题和代码并重新发布。我感谢你的努力。