Python - 创建一个在字母之间添加" - "的函数

Jam*_*es -1 python

我正在尝试创建一个函数f(x),它会"-"在每个字母之间添加一个:

例如:

f("James")
Run Code Online (Sandbox Code Playgroud)

应输出为:

J-a-m-e-s-
Run Code Online (Sandbox Code Playgroud)

如果您可以使用简单的python函数,我会喜欢它,因为我是编程新手.提前致谢.另外,请使用"for"功能,因为这是我正在努力学习的内容.

编辑:

是的,我确实想要"-"之后的"s".

Jam*_*pam 7

我可以尝试这样:

>>> def f(n):
...     return '-'.join(n)
...
>>> f('james')
'j-a-m-e-s'
>>>
Run Code Online (Sandbox Code Playgroud)

不确定你是否需要最后一个'连字符'.

编辑:

即使你想要后缀'-',那么也可以这样做

def f(n):
   return '-'.join(n) + '-'
Run Code Online (Sandbox Code Playgroud)

作为学习者,重要的是要理解你的"更好地连接python中的两个以上的字符串"将使用str.join(iterable),而+运算符可以将一个字符串附加到另一个字符串.

请阅读以下帖子以进一步探索:


Avi*_*Raj 5

另外,请使用"for"功能,因为这是我正在努力学习的内容

>>> def f(s):
        m = s[0]
        for i in s[1:]:
             m += '-' + i
        return m

>>> f("James")
'J-a-m-e-s'
Run Code Online (Sandbox Code Playgroud)
  • m = s[0] 索引0处的字符分配给变量 m

  • for i in s[1:]: 迭代第二个字符和

  • m += '-' + i将-+ char 附加到变量中m

  • 最后返回变量的值 m

如果你想要-在最后,那么你可以这样做.

>>> def f(s):
        m = ""
        for i in s:
            m +=  i + '-'
        return m

>>> f("James")
'J-a-m-e-s-'
Run Code Online (Sandbox Code Playgroud)