Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用Python打印此输出[自顶向下(偶数)][自下而上(奇数)]_Python - Fatal编程技术网

如何用Python打印此输出[自顶向下(偶数)][自下而上(奇数)]

如何用Python打印此输出[自顶向下(偶数)][自下而上(奇数)],python,Python,试图打印这种数字模式 想要这个输出:如果a=10 2 9 4 7 6 5 8 3 10 1 代码:: a=10 for i in range(1,a+1): if(i%2==0): print(i) elif(a-i%2!=0): print(a-i) 在你开始表单2时,我建议循环也这样做,然后根据值是奇数还是偶数,打印好的东西 a = 10 for i in range(2, a + 2

试图打印这种数字模式 想要这个输出:如果a=10

    2
    9
    4
    7
    6
    5
    8
    3
    10
    1
代码::

a=10
for i in range(1,a+1):
  if(i%2==0):
    print(i)
  elif(a-i%2!=0):
    print(a-i)
在你开始表单2时,我建议循环也这样做,然后根据值是奇数还是偶数,打印好的东西

a = 10
for i in range(2, a + 2):
    if i % 2 == 0:
        print(i)
    else:
        print(a - i + 2)

不知道这个问题是关于什么的,但是坚持你的方法 根据您的代码风格,您只需翻转其他值,因此:

a=10
for j in range(1,a+1):
  i = j + 1 if j % 2 else j - 1
  if(i%2==0):
    print(i)
  elif(a-i%2!=0):
    print(a-i)

另一个解决方案是运行多个迭代器并同时运行这两个迭代器:

a = 10
for i, j in zip(range(2, a + 2), range(a, 0, -1)):
    print(j if i % 2 else i)
或者,您可以创建一个包含所有项目的列表:

a = 10
print([i for l in zip(range(2, a + 2, 2), range(a - 1, 0, -2)) for i in l])

第一个范围在列表中向前运行,第二个范围在每种情况下向后运行。

好的开始。有什么问题吗?您是否收到任何错误代码或消息?您现在可以考虑接受答案或评论,以获取详细信息;奖励那些为你付出时间的人;我喜欢第二个,因为如果这是在生成器中,则没有任何方法可以降低代码的扩展速度