【问题标题】:to print name with a pattern in python在 python 中打印带有模式的名称
【发布时间】:2022-11-18 19:19:57
【问题描述】:

我要求用户输入它的名字并打印图案 例如: W WO 工作区 世界 世界

s=input("Enter your name")
l=s.split()
i=len(l)
for m in range(0,i):
    for s in range(0,m):
        print(s)
    print()

我写了这个程序哪里错了请帮忙。初学者在这里

【问题讨论】:

  • “模式”是什么意思?它与用户名有什么关系?
  • 那么你程序的当前输出是什么,为什么会出错呢?
  • s.split() 如果字符串中没有空格,将返回一个包含单个“单词”的列表,例如:"WORLD".split() -> ['WORLD']

标签: python debugging design-patterns


【解决方案1】:

不要不必要地使代码复杂化。 一个字符串,您可以将其视为要迭代的字符列表,而无需求助于拆分。

如果你使用Python的List Slicing,你可以指向你感兴趣的字符位置打印。

您的代码变为:

name = input("Enter your name: ")
for i in range(len(name)):
    print(name[:i+1])

【讨论】:

    【解决方案2】:

    我们可以在不使用 2 个循环的情况下做到这一点。

    s = input("Enter your name")
    
    for i in range(len(s)+1):
        print(s[:i])
    
    #Output:
    W
    WO
    WOR
    WORL
    WORLD
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-23
      • 2016-01-07
      • 1970-01-01
      • 2014-12-15
      • 2013-07-02
      • 2020-10-14
      • 2015-05-28
      • 2019-12-05
      相关资源
      最近更新 更多