在python中向数字的字符串表示形式添加数字
我正在处理以下形式的字符串“000351”。把它们想象成里程表读数。我想增加它们。例如 我想将1添加到“000345”并获得“000346” 下面的python代码完成了这项工作,但看起来相当麻烦。有没有更优雅的方法在python中向数字的字符串表示形式添加数字,python,string,integer,data-conversion,Python,String,Integer,Data Conversion,我正在处理以下形式的字符串“000351”。把它们想象成里程表读数。我想增加它们。例如 我想将1添加到“000345”并获得“000346” 下面的python代码完成了这项工作,但看起来相当麻烦。有没有更优雅的方法 s='000345' t=int(s) t=t+1 int_to_6digit_string(t) 其中函数int_to_6digit_string()如下所示 def int_to_6digit_string(i): if i<0 or i>999999:
s='000345'
t=int(s)
t=t+1
int_to_6digit_string(t)
其中函数int_to_6digit_string()如下所示
def int_to_6digit_string(i):
if i<0 or i>999999:
return 'argument out of bounds'
j=str(i)
if len(j) == 1:
return '00000'+j
elif len(j) == 2:
return '0000'+j
elif len(j) == 3:
return '000'+j
elif len(j) == 4:
return '00'+j
elif len(j) == 5:
return '0'+j
else:
return j
def int_至6位数字_字符串(i):
如果i999999:
返回“参数超出范围”
j=str(i)
如果len(j)==1:
返回“00000”+j
elif len(j)==2:
返回“0000”+j
elif len(j)=3:
返回'000'+j
elif len(j)==4:
返回'00'+j
elif len(j)==5:
返回“0”+j
其他:
返回j
使用字符串格式:'{:06}。格式(您的_编号)
这最好提交到溢出时发生的情况(s
确切地说是999999)?您是否考虑过改用str.format()
?您可以只使用zfill()函数。用0填充一个数字,包括我的答案