【问题标题】:Doing a Python 3 Exercise:做一个 Python 3 练习:
【发布时间】:2015-03-11 01:02:44
【问题描述】:

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

示例: 输入一个整数:453 输入宽度:6 格式化数字为:000453

【问题讨论】:

    标签: python python-3.x


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      不要使用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'
      

      【讨论】:

        【解决方案3】:

        这是另一种方法。

        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)
        

        【讨论】:

          猜你喜欢
          • 2012-06-27
          • 2013-11-06
          • 2016-08-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-05-01
          • 1970-01-01
          相关资源
          最近更新 更多