做一个Python 3练习:

时间:2015-03-11 01:02:45

标签: python python-3.x

使用以下标头编写函数以格式化具有指定宽度的整数。 def格式(数量,宽度): 该函数返回前缀为0的数字的字符串。字符串的大小是宽度。 例如,格式(34,4)返回" 0034"格式(34,5)返回" 00034"。如果数字长于宽度,则函数返回数字的字符串表示形式。例如,格式(34,1)返回" 34"。 编写一个测试程序,提示用户输入一个数字及其宽度,并显示从调用格式(数字,宽度)返回的字符串。

实施例: 输入一个整数:453 输入宽度:6 格式化的数字是:000453

3 个答案:

答案 0 :(得分:1)

所以,这个程序只需要一些心算。

def format(number, width):
    number = str(number)
    numZeros = width - len(number)
    return "0" * numZeroes + number

答案 1 :(得分:0)

不要使用def format(),它会遮挡内置的内容。

这是你的功能:

def myformat(number, width):
    length = len(str(number))
    return "0"*(width-length)+str(number)

myformat(34, 4)
=> '0034'
myformat(321, 5)
=> '00321'
myformat(321, 3)
=> '321'
myformat(321, 2)
=> '321'

答案 2 :(得分:0)

这是另一种方式。

enter code here

def nformat(number,width):
    width_1 = '0' + str(width) + 'd'
    print("The Formatted number is ",format(number,width_1))


def main():
    num1 = eval(input("Enter an integer: "))
    num2 = eval(input("Enter the width: "))
    nformat(num1,num2)