【问题标题】:I want to build my own "explode" function, but I have some problem我想建立自己的“爆炸”功能,但我有一些问题
【发布时间】:2020-10-01 20:52:06
【问题描述】:

我想在不使用内置函数的情况下构建自己的爆炸函数。

我做到了

def exp_ (a)

  out_ = []

  if out is None:
     out_ = []
  out.append(str[:1])

  if len_(str) > 1:
    explode(a[1:])
  return 

输入exp_("hello")

比,我的输出是['h']

我想要['h','e','l','l','o']

不使用附加。 (我已经构建了 len 函数,所以不用担心)

【问题讨论】:

  • 在你的代码编译之前大约有5个拼写错误,在错误的函数命名和错误的参数命名之间
  • 这段代码充满了语法错误。你混合了 out_,str[:1] 应该是 a[:1]。你的递归函数调用应该是exp_而不是explode。这段代码不可能给你输出 ['h']

标签: python explode


【解决方案1】:

你需要在下一个方法调用中extend

def exp_(a):
    if a is None:
        return []
    out_ = [a[:1]]
    if len(a) > 1:
        out_.extend(exp_(a[1:]))
    return out_

注意,如果这不仅仅是为了学习目的,你真的不应该这样做;不要重新发明现有代码,因为您的 explode 只是 list(a)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    相关资源
    最近更新 更多