我试图创建一个长计算计算器(做长除法,加法等),而在长除法部分,我试图得到要除法的数字,但我不能(如在numdiv中)
例如:在240/12中,我试图找到的数字是24,然后我会有另一个循环,将12相加,找到2(如24/12是2)。你知道吗
这是我的密码:
##############
#number is bigger (or equal) to number 2
number = 19000
operation = '/'
number2 = 12
##############
import math
longer = len(str(number))
shorter = len(str(number2))
if operation == '/':
print str(number2) + '/' + str(number)
for i in range(longer - 1):
if int(str(number)[0, i]) >= number2:
numdiv = int(str(number)[0, i])
for i in range(1, math.trunc(numdiv / number2)):
if number2 * (i + 1) >= numdiv:
print (shorter + 1) * ' ' + number * i
错误是从我做的地方的最后5行
if int(str(number)[0, i]) >= number2:
上面说
TypeError: string indices must be numbers, not object
新建
我试过了
if str(number)[:i] >= number2:
numdiv = str(number)[:i]
for i in range(1, math.trunc(numdiv / number2)):
if number2 * (i + 1) >= numdiv:
print (shorter + 1) * ' ' + number * i
在本例中,numdiv试图成为整数,这样做会导致问题:
ValueError: invalid literal for int() with base 10: ''
我该怎么解决这个问题?你知道吗
在
somestring[0, i]
中,您试图使用元组索引到字符串中。你知道吗证明:
尝试使用除整数以外的任何东西索引到字符串将给您一个
TypeError
。你知道吗如果要从字符串中切到位置
i
,请使用或者只是
同样的道理。你知道吗
相关问题 更多 >
编程相关推荐