0
我想創建一個代碼,接受用戶輸入,將它與元組列表(shares.py)進行比較,然後將值打印在列表中。例如,如果用戶輸入是友邦保險,該代碼將返回:多個輸入產生想要的輸出
Please list portfolio: aia
Code Name Price
AIA Auckair 1.50
這對於一個輸入工作正常,但我想要做的是使之成爲多個輸入工作。 例如,如果用戶輸入了友邦保險,航空,放大器 - 此輸入將返回:
Please list portfolio: aia, air, amp
Code Name Price
AIA Auckair 1.50
AIR AirNZ 5.60
AMP Amp 3.22
這是我到目前爲止所。任何幫助,將不勝感激!
import shares
a=input("Please input")
s1 = a.replace(' ' , "")
print ('Please list portfolio: ' + a)
print (" ")
n=["Code", "Name", "Price"]
print ('{0: <6}'.format(n[0]) + '{0:<20}'.format(n[1]) + '{0:>8}'.format(n[2]))
z = shares.EXCHANGE_DATA[0:][0]
b=s1.upper()
c=b.split()
f=shares.EXCHANGE_DATA
def find(f, a):
return [s for s in f if a.upper() in s]
x= (find(f, str(a)))
print ('{0: <6}'.format(x[0][0]) + '{0:<20}'.format(x[0][1]) + ("{0:>8.2f}".format(x[0][2])))
shares.py包含此
EXCHANGE_DATA = [('AIA', 'Auckair', 1.5),
('AIR', 'Airnz', 5.60),
('AMP', 'Amp',3.22),
('ANZ', 'Anzbankgrp', 26.25),
('ARG', 'Argosy', 12.22),
('CEN', 'Contact', 11.22)]
謝謝,這當然有幫助,但現在的問題是,如果我輸入幾個共享代碼(如放大器,空氣)它只會返回最後一個(在這種情況下空氣),有沒有辦法讓它在相互例如返回他們兩個: 請列出投資組合:AIA,空氣 代號名稱股價 AIA Auckair 1.50 AIR AirNZ 5.60 謝謝! – user2101517 2013-03-22 03:56:41