1370607278 发表于 2022-1-23 16:19:51

python课后作业问题

# 初始化杨辉三角形
# 创建一个10*10的二维列表,并将所有的元素初始化为0
triangle = []
for i in range(10):
    triangle.append([])
    for j in range(10):
      triangle.append(0)
   
# 计算杨辉三角形
# 根据观察,我们知道杨辉三角形左右两边的元素均为1
for i in range(10):
    triangle = 1
    triangle = 1
   
# 第i行j列的值 = 第(i-1)行(j-1)列的值 + 第(i-1)行(j)列的值
for i in range(2, 10):
    for j in range(1, i):
      triangle = triangle + triangle
   
# 输出杨辉三角形
for i in range(10):
    # 因为是三角形,所以i越小,前边需要填充的TAB越多
    for k in range((10-i)//2):
      print('\t', end='')
    for j in range(i+1):
      # 要形成“隔行错开”的效果,所以我们在偶数行加4个空格
      if i % 2 == 1:
            print("    ", end='')
      # 为何要使用TAB而非空格,大家可以将下面的end='\t'改成对应的空格数即可知晓
      print(triangle, end='\t')
    print()


这个代码为什么输出的是这样子的 并非三角形

大马强 发表于 2022-1-23 16:49:17

emmm为啥和我这不一样
https://static01.imgkr.com/temp/b8381ce7a09042609743a533dcefcc85.jpg

大马强 发表于 2022-1-23 16:55:27

要不你去idle里试试

isdkz 发表于 2022-1-23 16:57:11

在pycharm里面对不齐的,最好在cmd或powershell下运行吧

大马强 发表于 2022-1-23 16:57:42

我在idle里也没问题
https://static01.imgkr.com/temp/f9c0c474e5524938b532ca32264ef771.jpg

翼是孤独 发表于 2022-1-23 17:18:44

可能你的编译器里面设置的 tab 不等于 四个空格

anzhexuan666 发表于 2022-1-23 21:03:04

我用pycharm有时也这样,用idle就可以了。你也可能是tab缩进的设置不是四个空格

1370607278 发表于 2022-1-24 10:59:25

大马强 发表于 2022-1-23 16:49
emmm为啥和我这不一样

你的也是idle吗?为啥我的不行

大马强 发表于 2022-1-24 11:22:04

1370607278 发表于 2022-1-24 10:59
你的也是idle吗?为啥我的不行

我第一个是vs
后面用的是idle

Passepartout 发表于 2022-1-25 08:45:43

tab不是4格
页: [1]
查看完整版本: python课后作业问题