Python 正在尝试在列表中创建列表
这是我的密码Python 正在尝试在列表中创建列表,python,Python,这是我的密码 Apple = ['Aapl', 300] Microsoft = ['Msft', 180] #List of Stocks in the Index stocks = [Apple, Microsoft] #Company Lookup to Find Ticker Symbol or Share Price def lookup(stock): return stock n=0 if stock == stocks[n]: sto
Apple = ['Aapl', 300]
Microsoft = ['Msft', 180]
#List of Stocks in the Index
stocks = [Apple, Microsoft]
#Company Lookup to Find Ticker Symbol or Share Price
def lookup(stock):
return stock
n=0
if stock == stocks[n]:
stock = stock
else:
n=n+1
stock = (input("What company would you like to look up?"))
lookup(stock)
print(stock)
##Non working
select = input("Would you like their ticker (1) or price (2)?")
if select == 1:
print(stock[0])
else:
print(stock[1])
目前我得到的是股票中的第一个或第二个字母,即苹果的A或p,微软的m或I。
我想让Python认识到变量“stock”的值实际上是和index,并说明索引中的0或1位置。有什么帮助吗?我想你想要的是这样的:
Apple = ['Aapl', 300]
Microsoft = ['Msft', 180]
#List of Stocks in the Index
stocks = {'Apple': Apple, 'Microsoft': Microsoft}
#Company Lookup to Find Ticker Symbol or Share Price
def lookup(stock_input):
if stock_input in stocks:
return stocks[stock_input]
else:
print('{0} not found in {1}'.format(stock_input, stocks.keys()))
stock_input = input("What company would you like to look up?")
stock = lookup(stock_input)
print(stock)
select = int(input("Would you like their ticker (1) or price (2)?"))
if select == 1:
print(stock[0])
else:
print(stock[1])
我想你想要的是这样的东西:
Apple = ['Aapl', 300]
Microsoft = ['Msft', 180]
#List of Stocks in the Index
stocks = {'Apple': Apple, 'Microsoft': Microsoft}
#Company Lookup to Find Ticker Symbol or Share Price
def lookup(stock_input):
if stock_input in stocks:
return stocks[stock_input]
else:
print('{0} not found in {1}'.format(stock_input, stocks.keys()))
stock_input = input("What company would you like to look up?")
stock = lookup(stock_input)
print(stock)
select = int(input("Would you like their ticker (1) or price (2)?"))
if select == 1:
print(stock[0])
else:
print(stock[1])
有两个问题。如前所述,
lookup
函数返回字符串“Aapl”
或“Msft”
,而不是列表。然后,任何input
语句的值都是字符串,但您的条件是将其与int进行比较,因此它总是返回False
。因此,它将始终打印stock
字符串的第二个元素,即a
或s
要解决此问题,可以执行以下操作:
def查找(库存):
对于库存中的库存i:
如果股票==股票i[0]:
retstock=库存
退货(retstock)
股票=(输入(“您想查找哪家公司?”)
库存=查找(库存)
打印(库存[1])
选择=输入(“您想要他们的股票代码(1)还是价格(2)?”
如果选择==“1”:
打印(库存[0])
elif select==“2”:
打印(库存[1])
有两个问题。如前所述,lookup
函数返回字符串“Aapl”
或“Msft”
,而不是列表。然后,任何input
语句的值都是字符串,但您的条件是将其与int进行比较,因此它总是返回False
。因此,它将始终打印stock
字符串的第二个元素,即a
或s
要解决此问题,可以执行以下操作:
def查找(库存):
对于库存中的库存i:
如果股票==股票i[0]:
retstock=库存
退货(retstock)
股票=(输入(“您想查找哪家公司?”)
库存=查找(库存)
打印(库存[1])
选择=输入(“您想要他们的股票代码(1)还是价格(2)?”
如果选择==“1”:
打印(库存[0])
elif select==“2”:
打印(库存[1])
您正在将字符串stock
传递到函数中并立即返回它。因此lookup()
返回一个字符串而不是列表。您正在将字符串stock
传递到函数中并立即返回它。因此lookup()
返回一个字符串而不是列表。