【问题标题】:Python multiplication table, seperte with stringsPython乘法表,与字符串分开
【发布时间】:2018-02-24 19:48:09
【问题描述】:

我想创建一个带有 2 个参数的函数,并以一种很好的格式打印这个数字的乘法表,其中行由行分隔。这是目标: target design

我试过了,但不知道在哪里集成“--------”字符串。有什么想法吗?

def multi_table(x,y):
    for row in range(1, x+1):
        for col in range(1, y+1):
            num = row * col

            if num < 10: blank = '  '   
            else:
                if num < 100: blank  = ' '  
            print(blank, num, end = '')     
        print()


multi_table(4,5)

【问题讨论】:

  • 在不知道您已经尝试过什么的情况下很难为您提供帮助。我建议您展示您尝试过的内容,以及您尝试后得到的结果。

标签: python string function


【解决方案1】:

您需要在行和列循环之间添加打印语句。您还需要确保以换行符 \n 结束打印语句。请参阅下文。

def multi_table(x,y):
    for row in range(1, x+1):
        print("---------------------\n")
        for col in range(1, y+1):
            num = row * col

            if num < 10: blank = '  '   
            else:
                if num < 100: blank  = ' '  
            print(blank, num, end = '')     
        print()


multi_table(4,5)

【讨论】:

    【解决方案2】:

    print() 用于转到下一行,这就是您要添加“---------------”的位置。所以将print() 更改为print('\n------------------------\n')\n 表示转到下一行。

    【讨论】:

      【解决方案3】:

      要补偿 y,您可以使用以下内容, 此外,您可以使用格式字符串方法简化格式:

      def multi_table(x,y):
      for row in range(1, x+1):
          print('----' * y)
          for col in range(1, y+1):
              num = row * col
              print('{:4}'.format(num), end = '')
          print()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多