问题描述
我正在创建一个接受关键字的类搜索程序,并通过类的描述元素对其进行搜索。
我正在尝试获取result [[]]以返回整个list(r),但仅返回搜索项之后的list(r)的其余部分。我不明白为什么r会因为if语句而改变。
table_row_col是[类别] [描述元素]格式的二维数组,搜索词是字符串。
def search_class(search_term,table_row_col):
result = [[]]
row = 0
for r in table_row_col:
for c in r:
if search_term in c:
result.insert(row,list(r))
row += 1
return result
示例结果: 关键字“聚” 结果= [亲自 TR 下午01:40 下午02:55 WNS 506 施密特,J]
然后
[MATH 09001 多项式方程 亲自 TR 下午01:40 下午02:55 WNS 506 施密特,J]
当我将result.insert语句放在if循环之外时,将打印整个类描述
任何帮助将不胜感激。这是我第一次使用python,但我仍在调整for循环。
解决方法
类似的事情应该起作用。我做了一些更改,但是这里没有什么太疯狂了。
def search_class(search_term,table_row_col):
result = []
for row in table_row_col:
if any(search_term in c for c in row):
result.append(row)
return result
table_row_col = [["MATH","09023","Polynomial equations","In-person","TR","1:40PM","506 Schmitt JR"],["MATH","Calculus","Blended","1:50pm","704 Gregg]"],"Pressing the keys on a Calculator","Virtual","8:50pm","804 JimmyCarlos]"]]
print(search_class("Calc",table_row_col))
让我知道您有任何问题。如果您实际上是在安排实际课程的时间安排-希望一切顺利!如果没有计算机,那可能会很痛苦!