我想把这个数据的格式统一给我供用户阅读,但我不能用我所尝试的一切。此处代码:
def runModel():
global valueJuvenile, valueAdult, valueSenile,total, values
values = ''
total = valueSenile + valueJuvenile + valueAdult
values += 'G' + ', '
values += 'Juv' + ', '
values += 'Adu' + ', '
values += 'Sen' + ', '
values += 'Tot' + ', '
values += '\n0' + ', '
values += str(valueJuvenile) + ', '
values += str(valueAdult) + ', '
values += str(valueSenile) + ', '
values += str(firstTotal) + ', '
for n in range(1,numNewGen):
if n != 0:
values += '\n'
values += str(n)+', '
valueJuvenile = round(valueAdult * birthRate * valueJuvenileSR,3)
valueAdult = round(valueJuvenile * valueAdultSR,3)
valueSenile = round(valueSenile + valueAdult * valueSenileSR,3)
total = round(valueSenile + valueJuvenile + valueAdult,3)
values += str(valueSenile) + ', '
values += str(valueJuvenile) + ', '
values += str(valueJuvenile) + ', '
values += str(total)
print(values)
print("Model has been ran!")
input('\nPlease press Enter to return to menu...')
menu()
下面是外壳中的结果:
设置值:
^{pr2}$正如您在第0行看到的,数据与其他行的位置不一样,这也发生在第10行,因为0是一个额外的字符,它将所有内容向右移动一个位置,我想知道如何格式化它。在
就上下文而言,这是一个程序,用户设置变量,这些变量由其他变量调整,例如青少年的价值受到下一代青少年存活率的影响。在输出shell中,G对应于代数,在这种情况下,0是用户设置到第10代的原始值,在该点上,其他变量已经影响了10次。Juv、Adu和Sen分别对应于少年成人和老年人
^{} 函数可以做到这一点。在
下面是一个如何使用它的示例:
对于整型变量,使用
d
表示浮点变量f
。:
后面的第一个数字是该数字应该占用的空间。对于浮点数,.
后面的数字是要显示的小数位数可以使用C样式的格式字符串,或.format方法。在
作为使用C样式格式字符串的示例,可以执行以下操作:
这将产生以下结果:
^{pr2}$基本规则是%5.1f使浮点数包含5个字符,包括一个十进制数字。填充字符将是空格。所以如果你想用8个字符和3个十进制数字作为一个浮点,你可以用%8.3f。或者如果你想要4个字符而没有小数点,你可以用%4.0f
类似地,对于整数%2i,整数的宽度为2个字符。如果你想让一个整数用6个字符,你可以用%6i。如果你想要零填充,你可以像这样给格式字符串加一个零:%06i。请注意%i和%d是等价的。在
使用
format
。例如:相关问题 更多 >
编程相关推荐