将零作为前缀添加到基于位数的计算值中

2024-06-01 06:06:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经写了一个表达式,将要求用户输入。根据用户输入,它将计算一个值。如果计算出的值是1,那么我希望将值转换为0001。当计算值为2到3位数时,同样的情况也适用。你知道吗

如果计算值是4或5位数长,那么我不想对其进行任何修改。这个值在程序的后面部分使用,我在这里没有提到。你知道吗

import numpy as np

FT_init = 3.1212
delt = 0.15
TS_init = 165
flowtime = input("Enter the flow time required: ")
timestep = (flowtime-FT_init)/delt
timestep = round(timestep + TS_init)
print timestep 

我请求你帮忙。你知道吗


Tags: 用户import程序numpyinit表达式as情况
3条回答

这和另一个答案差不多。你知道吗

i = 9
print("{:05d}".format(i))

只需将打印更改为使用格式字符串:

print '%04d' % int(timestep)

这将零填充左,并允许它显示5位没有问题

但是,您不能在任何类型的计算中使用该输出,因为转换回一个数字将去掉左零,并可能将其用作八进制数-如果存在无效八进制的数字,即0397,则会导致转换错误

可以使用zfill()字符串方法:

str(timestep).zfill(4)

相关问题 更多 >