所以我正在构建一个股票搜索项目,我正在寻找包含全名子字符串的股票名称的股票代码。你知道吗
例如,将Apple作为stockName传递将返回AAPL,因为Apple是Apple,Inc的子字符串。同样,对于Microsoft或Micros返回MSFT,因为Microsoft或Micros是Microsoft Corporation的子字符串。你知道吗
这是我的现有代码,如果我放入子字符串,它将返回错误:
def getStockTicker(stockName):
return companyTickers[companyNames.index(stockName)]
有人有什么想法吗?你知道吗
编辑:我已经处理了这个错误,如果在companyNames中找不到任何东西,它就会返回ValueError
stockName in someFullString
将告诉您stockName
是否是someFullString
的子串。你知道吗因此,您可以创建一个只包含
stockName
是其子字符串的字符串的生成器,并检索第一个字符串的索引(如果有的话):除了迭代
companyNames
并检查它是否包含stockName
之外,可能没有别的方法了。你知道吗我认为两个单独的列表,一个是公司名称,一个是公司股票代码,不是正确的数据结构。你知道吗
你熟悉Python
dict
吗?它将键映射到值。如果您使用公司名称作为键,使用股票代码符号作为值,那么声明dict
将如下所示:使用全名检索给定的股票代码如下所示:
至于基于子字符串检索代码,这是完全可行的。需要注意的一点是:同一子串可能匹配多个键,因此您希望返回可能匹配的列表,而不是第一个可能匹配的。你知道吗
相关问题 更多 >
编程相关推荐