繁体   English   中英

如何在Python中将字符串中的单个元素相乘?

[英]How to multiply individual element in a string in Python?

如果我要运行诸如(“ hello”,3)之类的plicateString(aString,value),它应该返回“ hhheeellllllooo”。 这就是我所拥有的,但它所要做的就是将整个单词返回三遍。 我不确定如何告诉它乘以每个元素而不是整个字符串。 有人可以帮我吗?

    def duplicateString(aString,value):
        return (aString)*(value)

所以这就是如果我使用hello和3的话...

    duplicateString("hello",3):
    "hellohellohello"

您正在用代码复制整个字符串。 相反,您需要遍历字符串的各个字符并复制它们。 这是一种方法:

def duplicateString(astring, value):
    return "".join(ch * value for ch in astring)

[ch * value for ch in astring]表示hello3表示['hhh', 'eee', 'lll', 'lll', 'ooo'] 摆脱[]以避免创建中间列表,如Steven在评论中所建议。

join从中生成所需的字符串。

您只需要

def duplicateString(aString,value):
    newString = ""
    for char in aString:
        newString += char * value
    return newString

试试这个,可能对您有帮助.....

newstring =''表示aString中的字母:表示i在范围(值)中:newstring + =字母
返回(新字符串)

应该做到这一点...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM