返回列表列表中特定交易品种的位置
Returning position of specific symbol in list of lists
对于我正在编写的这个函数,我想 return 最接近列表列表左上角的特定字符的位置。在不导入模块的情况下以最基本的方式完成此操作会很棒。这是我到目前为止的代码,然后我将详细解释我正在尝试做的事情
def find_position(symbol,lst):
# Sample List: [['.','M','M','G','G'],
# ['.','.','.','.','h'],
# ['B','B','B','.','h']]
#
for sublist in lst:
for symbol in sublist:
if symbol == True:
lst.find(symbol)
return symbol
else:
return None
因此,如果指示函数查找“.”那么它应该 return (0,0) 因为它在第一个列表的第一个位置。如果函数被告知要查找 'h' 那么它应该 return (1,4) 因为它在第二个列表的第 4 个位置(python 从 0 开始)。我当前的代码不会查找最靠近左上角的字符,因为我不确定如何对其进行编程。提前感谢我收到的任何帮助。
一个遍历所有元素直到找到字符的函数。一旦找到它,它就会 returns 位置。要查找 psotion,您可以使用 enumerate 函数,其中 returns 一个元组包含一个计数(从 start 开始,默认为 0)和迭代序列
获得的值
def find_position(symbol,lst):
for index, my_list in enumerate(s):
for i,item in enumerate(my_list):
if symbol == item:
return "{},{}".format(index,i)
return "Not found"
s = [['.','M','M','G','G'],
['.','.','.','.','h'],
['B','B','B','.','h']]
a = find_position("h",s)
Daniel 的方法在时间执行上稍快一些,但这也适用于比较:
def find_pos(listname, symbol):
for i in range(len(listname)):
for j in listname[i]:
if j == symbol:
return i ,listname[i].index(j)
对于我正在编写的这个函数,我想 return 最接近列表列表左上角的特定字符的位置。在不导入模块的情况下以最基本的方式完成此操作会很棒。这是我到目前为止的代码,然后我将详细解释我正在尝试做的事情
def find_position(symbol,lst):
# Sample List: [['.','M','M','G','G'],
# ['.','.','.','.','h'],
# ['B','B','B','.','h']]
#
for sublist in lst:
for symbol in sublist:
if symbol == True:
lst.find(symbol)
return symbol
else:
return None
因此,如果指示函数查找“.”那么它应该 return (0,0) 因为它在第一个列表的第一个位置。如果函数被告知要查找 'h' 那么它应该 return (1,4) 因为它在第二个列表的第 4 个位置(python 从 0 开始)。我当前的代码不会查找最靠近左上角的字符,因为我不确定如何对其进行编程。提前感谢我收到的任何帮助。
一个遍历所有元素直到找到字符的函数。一旦找到它,它就会 returns 位置。要查找 psotion,您可以使用 enumerate 函数,其中 returns 一个元组包含一个计数(从 start 开始,默认为 0)和迭代序列
获得的值def find_position(symbol,lst):
for index, my_list in enumerate(s):
for i,item in enumerate(my_list):
if symbol == item:
return "{},{}".format(index,i)
return "Not found"
s = [['.','M','M','G','G'],
['.','.','.','.','h'],
['B','B','B','.','h']]
a = find_position("h",s)
Daniel 的方法在时间执行上稍快一些,但这也适用于比较:
def find_pos(listname, symbol):
for i in range(len(listname)):
for j in listname[i]:
if j == symbol:
return i ,listname[i].index(j)