首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何打印10*10次表格作为网格?

如何打印10*10次表格作为网格?
EN

Stack Overflow用户
提问于 2014-10-16 02:57:04
回答 3查看 8.9K关注 0票数 1

我试图打印一个10x10倍的表使用for循环。

以下是我的尝试:

代码语言:javascript
复制
for x in range (1, 11):
    for y in range (1, 11):
        print (x*y)
    print()

输出是一条垂直的数字线。我需要像方形桌子那样的那种。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-16 02:59:58

您需要做的是利用end参数:

代码语言:javascript
复制
for x in range (1, 11):
    for y in range (1, 11):
        print ('{:3}'.format(x*y), end=' ')
    print()

另外,请注意行项的格式化方式。通过使用'{:3}'.format(x*y),该表达式将空格填充到三个数字。有关格式化的详细信息,查阅文件

样本输出:

代码语言:javascript
复制
  1   2   3   4   5   6   7   8   9  10 
  2   4   6   8  10  12  14  16  18  20 
  3   6   9  12  15  18  21  24  27  30 
  4   8  12  16  20  24  28  32  36  40 
  5  10  15  20  25  30  35  40  45  50 
  6  12  18  24  30  36  42  48  54  60 
  7  14  21  28  35  42  49  56  63  70 
  8  16  24  32  40  48  56  64  72  80 
  9  18  27  36  45  54  63  72  81  90 
 10  20  30  40  50  60  70  80  90 100 
票数 3
EN

Stack Overflow用户

发布于 2014-10-16 02:59:45

除非另有说明,打印函数将添加一个\n。试着明确地说不要:

代码语言:javascript
复制
for x in range (1, 11):
    for y in range (1, 11):
        print (x*y, end=' ') 
    print()

注意:我假设您在python3上或者导入了print_function,因为您使用的是print函数,而不是语句。

编辑:最后加了一个空格

票数 2
EN

Stack Overflow用户

发布于 2019-03-14 14:59:39

可能会使事情变得复杂一些,然后打印X索引和Y索引:)

代码语言:javascript
复制
n = 11
m = 11

grid = [[x * y for x in range(1,n)] for y in range(1,m)]

print('   ', end='')
print(''.join([f'{j:5}' for j in range(1,n)]))
print('   ', end='')
print(''.join([f'{"_":>5}' for _ in range(1,n)]))

for i in range(n-1):
        print(f'{i+1:2}|', end=' ')
        print(' '.join(f'{x:4}' for x in grid[i]))

结果

代码语言:javascript
复制
       1    2    3    4    5    6    7    8    9   10
       _    _    _    _    _    _    _    _    _    _
 1|    1    2    3    4    5    6    7    8    9   10
 2|    2    4    6    8   10   12   14   16   18   20
 3|    3    6    9   12   15   18   21   24   27   30
 4|    4    8   12   16   20   24   28   32   36   40
 5|    5   10   15   20   25   30   35   40   45   50
 6|    6   12   18   24   30   36   42   48   54   60
 7|    7   14   21   28   35   42   49   56   63   70
 8|    8   16   24   32   40   48   56   64   72   80
 9|    9   18   27   36   45   54   63   72   81   90
10|   10   20   30   40   50   60   70   80   90  100
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26395505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档