如何将python中的字符串重复到一定长度

How to repeat a string in python to a certain length

我在 python 2 上工作,我尝试了此站点上提供的代码,但似乎没有任何效果。 这是我使用的代码示例,但它不起作用:

def repeat_to_length(string_to_expand, length):
   return (string_to_expand * ((length/len(string_to_expand))+1))[:length]

我对编码和使用非常陌生python所以我很感激任何人都可以帮助我指出我的错误

string1 = 'abcd'
length = 10
string2 = string1 * length
print(string2)

truncateLength = 15
print(string2[0 : truncateLength])

原始字符串:

abcdabcdabcdabcdabcdabcdabcdabcdabcdabcd

截断的字符串:

abcdabcdabcdabc

将 len() 除以长度时,您需要确保(将)结果转换为整数: 编辑:在 Python 3 中需要强制转换,而不是 Python 2

def repeat_to_length(string_to_expand, length):
   return (string_to_expand * (int(length/len(string_to_expand))+1))[:length]

result = repeat_to_length("hello", 22)
print(result)

字符串的乘数必须是整数值,而不是浮点数。

hellohellohellohellohe

[:length] 序列切片表示法 ,它从字符串的开头获取字符,直到 length 个字符。