我试图理解如何在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
答案 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