【发布时间】:2012-02-14 17:01:15
【问题描述】:
在过去的 2 个小时里,我一直在努力寻找解决方案,但一无所获。因此,要么这是不可能的,要么它是如此基础,以至于没有人写这个。基本上我有两个相等的数字的字符串,但是当我将它们加在一起时,我得到一个连接而不是数字..这是我的代码(Python)
currentNukeScriptName = nuke.root().name()
splitUpScriptName1 = currentNukeScriptName.split('/')
splitUpScriptName2 = splitUpScriptName1[-1]
splitScriptNameAndExtention = splitUpScriptName2.split('.')
currentNukeScriptName = splitScriptNameAndExtention[0]
splitUpCurrentScriptName = currentNukeScriptName.split('_')
currentVersionNumber = splitUpCurrentScriptName[-1]
decimalVersionNumber = "1" + "," + str(currentVersionNumber)
addingNumber = 1
newVersionNumber = str(decimalVersionNumber) + str(addingNumber)
print newVersionNumber
decimaleVersionNumber = 1,019
如果我也更改 newVersionNumber 代码:
newVersionNumber = int(decimalVersionNumber) + int(addingNumber)
我明白了:
# Result: Traceback (most recent call last):
File "<string>", line 10, in <module>
ValueError: invalid literal for int() with base 10: '1,019'
我不确定该怎么做.. 这不可能吗?还是我做错了什么?
编辑:
所以问题是在我添加逗号的十进制版本号中发现的。保留逗号并仍然将数字相加的最佳方法是什么?
【问题讨论】:
标签: python string int concatenation add