我的代码的目的是在我的代码之前和之后的数字分开。
对于NumberStr中的x:
如果x =='。':
DigitsBeforeDP = NumberStr [:( x-1)]
DigitsAfterDP = NumberStr [(x + 1):]
这是我编写的代码,我不知道为什么会收到错误:
追溯(最近一次通话):
在第101行的文件“ ...”中
ConvertToText()
文件“ ...”,第97行,在ConvertToText中
DigitsBeforeDP = NumberStr [:( x-1)]
TypeError:-:“ str”和“ int”的不受支持的操作数类型
它可能与NumberStr
作为字符串存储的事实有关吗?
谁能解释我做错了什么,并告诉我如何改进我的代码。
最佳答案
您可以使用str.split()
方法执行此操作。
before, after = number_str.split('.')
另外,出现此错误的原因是因为您正在执行
(x-1)
,但是此时x
是字符串'.'
,所以您要告诉解释器执行('.' - 1)
,这就是为什么这样做的原因。告诉您它不支持-
和str
的int
。您可能打算拥有
(NumberStr.indexOf(x) - 1)
关于python - 如何将小数点前后的数字存储在不同的变量中。 python ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32900119/