繁体   English   中英

如何在字符串列表中修改字符串

[英]how to modify strings in a list of strings

我想获取一个字符串列表,这些字符串代表在CLI中输入的各个行,并在开头添加“〜$”,因此当我显示它们时,很清楚它们是命令行。 我试过了

command = # a multiline block of command lines
lines = command.split('\n')
for l in lines:
    l = '~$ ' + l
for l in lines: print l

但这会修改​​临时变量l,我认为无需返回并更改列表中的实际值。 如果我将打印内容放入第一个循环中,它将以正确的值进行打印,但是如果我像显示的那样进行,则不会进行更改。 在此先感谢您的帮助。

使用列表理解:

lines = ['~$ ' + line for line in command.split('\n')]

如果必须使用for循环,则可以使用enumerate()包括索引,以便可以替换列表中的各个项目:

for i, line in enumerate(lines):
    lines[i] = '~$ ' + line

功能方式:

list(map(lambda s: '~$ ' + s, command.splitlines()))

暂无
暂无

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

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