Python 输入分配不正确 def roman_值(罗马): 罗马值=('I',1),('IV',4),('V',5),('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100), ('CD',400),('D',500),('CM',900),('M',1000)) 罗马符号=输入(“输入罗马符号
我想你实际上想要这样的东西:Python 输入分配不正确 def roman_值(罗马): 罗马值=('I',1),('IV',4),('V',5),('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100), ('CD',400),('D',500),('CM',900),('M',1000)) 罗马符号=输入(“输入罗马符号,python,Python,我想你实际上想要这样的东西: def roman_value(roman): roman_values = (('I',1), ('IV',4), ('V',5), ('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100), ('CD', 400), ('D', 500), ('CM', 900), ('M',1000)) romanSymbol = input("enter ro
def roman_value(roman):
roman_values = (('I',1), ('IV',4), ('V',5), ('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100),
('CD', 400), ('D', 500), ('CM', 900), ('M',1000))
romanSymbol = input("enter roman symbols < 3999: ")
total=0
for symbol,value in reversed(roman_values):
while roman.startswith(symbol):
total += value
roman = roman[len(symbol):]
return total
if __name__=='__main__':
for value in "MCMXC", "MMVIII", "MDCLXVI", "":
print('%s = %i' % (value, roman_value(value)))
roman_value()
def roman_value():
罗马值=('I',1),('IV',4),('V',5),('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100),
('CD',400),('D',500),('CM',900),('M',1000))
罗马符号=输入(“输入罗马符号<3999:)
罗马符号
总数=0
对于符号,值为反向(罗马值):
而罗马语。以(符号)开头:
总数+=价值
罗马的,罗马的
打印(“%s=%i%”(罗马符号,总计))
罗马值()
您的问题是什么?您好,我正在尝试获取输入以接受输入,然后它可以显示应该是整数的输出,尽管我发现可能需要在列表中添加一些罗马符号,但现在我不确定它为什么不接受输入,我错过了一些东西…我不明白你在这里想做什么。你的计划有什么意义?你想做什么?不确定你想做什么,但是你的输入从来没有被使用过。用户输入罗马数字,然后我试图将其转换成整数,只是不能正确地得到这个数字。这是正确的,它工作了,我无法识别我遗漏了什么,谢谢,还有一些测试要做,用其他罗马符号,如果我被卡住了,我会回来。。。
def roman_value():
roman_values = (('I',1), ('IV',4), ('V',5), ('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100),
('CD', 400), ('D', 500), ('CM', 900), ('M',1000))
romanSymbol = input("enter roman symbols < 3999: ")
roman = romanSymbol
total=0
for symbol,value in reversed(roman_values):
while roman.startswith(symbol):
total += value
roman = roman[len(symbol):]
print('%s = %i' % (romanSymbol, total))
roman_value()