【问题标题】:i stuck how to create pyramid using python? [duplicate]我坚持如何使用 python 创建金字塔? [复制]
【发布时间】:2011-06-03 10:44:23
【问题描述】:

可能重复:
Pyramid of asterisks program in Python

我用 C++ 编写了一个显示星号金字塔的程序(见下文),现在我想看看它是如何在 Python 中完成的,但这并不像我想象的那么容易。 :) 有没有人试过这个,如果是的话,你能告诉我有帮助的代码吗? 2) 在这些行中,“*”的数字将显示为奇数 (1 ,3 ,5 ,7 ,9 )

这是输出

   *  1
 ***  3
***** 5

【问题讨论】:

  • 没有人会为您编写代码。到目前为止你有什么?
  • 你用来尝试这个的代码在哪里? :-)
  • 哇,你竟然逐字复制了一个类似的问题??作为程序员,你还没有准备好从事真正的工作。你甚至从另一个问题的答案中偷走了你的“工作”。我真诚地希望你在这次面试中失败。

标签: python


【解决方案1】:

免责声明:这可能不适用于 Python 3.x:

Python 2.7.1 (r271:86832, May 27 2011, 21:41:45) 
[GCC 4.2.1 (Apple Inc. build 5664)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print '''   *  1
...  ***  3
... ***** 5'''
   *  1
 ***  3
***** 5

【讨论】:

  • (+1) 甚至可以让未对齐的星号完全匹配 OP 的规范。
  • 谢谢,但它有任何编码来生成该序列吗?
  • huhu..请帮助我..这是我通过面试实习的编码..
  • 对一个坏问题的好答案表示赞同
  • @mohd izat:我不会为你参加面试。如果你告诉我你在哪一点上挣扎,我会帮助你克服它。
【解决方案2】:

没那么难..

>>> lower = 1
>>> higher = 19
>>> for i in xrange(lower,higher,2):
...     print ' ' * [Calculation Here] + '*' * i
... 
         *
        ***
       *****
      *******
     *********
    ***********
   *************
  ***************
 *****************

【讨论】:

  • 鉴于这是一个编码面试,要求其他人为你通过它应该表明你还没有为这份工作做好准备。我最初发布答案是因为我认为这只是一件有趣的事情。
  • 在这些行中,“*”的数字将显示为奇数 (1 ,3 ,5 ,7 ,9 )。我们可以吗?
  • @Johnsy,我没有意识到这是为了面试,所以我稍微修改了答案。
  • 愿意学习是一回事。但你必须学习。展示你迄今为止工作的一个例子,然后寻求帮助,而不是答案。如果你确实得到了这份工作,并且他们发现你的技能比他们在面试时想象的要差得多,他们可能会得出你作弊的结论并解雇你。这意味着您应该像尝试实际项目一样尝试面试。
  • @john 完全一样。对这个人很不满意。
【解决方案3】:
import pprint

def get_vals(mVal):
   return map(lambda x: ' ' * (mVal - x - 1) + ('*' * x) + ' %i' % x, xrange(1, mVal, 2))

pprint.pprint(get_vals(12))

【讨论】:

    猜你喜欢
    • 2022-09-29
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2016-11-21
    • 1970-01-01
    • 2022-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多