如何重复子串

时间:2014-10-07 14:32:11

标签: python

我试图理解如何在python中访问子串。在我的代码中,我试图将所有字母重复到一个字母。

例如:

x =你好

Y = 2

Z = 4

输出=呵呵呵呵

def f11():

    x= input('Enter a word: ')
    y= int(input('Enter a number: '))
    z= int(input('Enter the amount of times you want those letters repeated: '))

    if len(x) > 0 and x.isalpha():
       x[0:y:1]== letter
       letter * z== new_word
       print(new_word)
    else:
        print('Error no word input')
        f11()
f11()

问题出在

x[0:y:1] == letter

1 个答案:

答案 0 :(得分:1)

您可以使用切片表示法来抓取您感兴趣的字符串部分,然后使用*运算符重复子字符串。

def repeatLetters(word, dist, rep):
    return word[:dist] * rep

>>> repeatLetters('hello', 3, 4)
'helhelhelhel'

请注意,我使用了缩写切片符号

[:dist]

相当于

[0 : dist : 1]

修改
作为旁注,你有一些Python语法的误解。以这些行为例。

x[0:y:1] == letter
letter * z== new_word

==运算符是一个等式检查,它表示“左侧是否与右侧相等?”。它是赋值运算符,它是=。话虽这么说,即使你确实使用了赋值运算符,你必须从右到左分配,例如

new_word = letter * z