[英]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.