说我有这个字符串:
$('#avatar_form').submit(
如何在所有行的末尾添加内容?字符串中的行数可能会不时变化。
类似的东西:
"""
iris
jonah
car
donut
"""
重复是字符串的名称。
此代码仅将“X”添加到第1行的末尾。
我怎样才能为每一行做到这一点?
期望的输出:
l = duplicate.split('\n')
l[1]+= 'X'
l = '\n'.join(l)
print(l)
谢谢!
答案 0 :(得分:5)
只需使用str.replace()
:
addition = 'X'
new_string = duplicate.replace('\n', addition + '\n')
答案 1 :(得分:0)
删除l[1]+= 'X'
行并将l = '\n'.join(l)
更改为l = 'X\n'.join(l)
。
答案 2 :(得分:0)
首先,按duplicate
上的'\n'
进行拆分:
splitted = duplicate.split('\n')
然后使用'x'
在每行的末尾添加for
,并在'\n'
上加入这一行。
我在一个符号线上做两个操作:
"\n".join(line + "x" for line in splitted)
如果你不熟悉生成器表达式,这有点类似于:
withSuffixes = []
for line in l:
withSuffixes.append(splitted + "x")
"\n".join(withSuffixes)
答案 3 :(得分:0)
您可以使用map将函数应用于使用split
获得的列表的所有元素,然后使用join
单个字符串中的元素:
"\n".join(map(lambda word: word+"x", s.split("\n")))
答案 4 :(得分:0)
试试这个,使用list comprehension为每一行添加'X',然后用换行符连接它。
duplicate = """
iris
jonah
car
donut
"""
l = duplicate.split('\n')
l = [line + 'X' for line in l]
final = '\n'.join(l)