我的程序應該有一個輸入,您可以在其中編寫阿拉伯數字,羅馬數字或添加羅馬數字。例如:Python - 如何使一個輸入對應於幾個函數
Year: 2001
... MMI
Year: LX
... 60
Year: MI + CI + I
... MCIII
Year: ABC
... That's not a correct roman numeral
嗯,我想你會得到這筆交易。首先,我試圖用這樣的:
def main():
year = input ("Year: ")
if type(int(year)) == type(1):
arab_to_rome(year)
else:
rome_to_arab(year)
main()
這有明顯的問題,首先,不是整數否則一切都將被認爲是羅馬數字,它並不需要另外考慮。
然後我搜索了一下,發現了一個叫isinstance的東西。這是嘗試的結果:
def main(input):
year = input ("Year: ")
if isinstance(input,int):
arab_to_rome(year)
elif isinstance(input,str):
rome_to_arab (year)
else:
print ("Error")
main()
這也有問題。我收到一條錯誤消息,指出:Invalid syntax.
此代碼不考慮另外考慮。
請寫你的代碼到的問題,使我們可以將其複製到與它合作。 – Knells
考慮在輸入字符串中應用'.split(「+」)'來檢測添加項並隔離術語 – Julien