如何在map()中使用str.replace()作为函数
我有一个从Excel表格中得到的行列表。我想对每一行中的每个项目使用替换功能,把 '
替换成 \'
。
但是,这样做不行:
row = map(replace('\'', "\\'"), row)
这会报错,说替换函数最多只能接受3个参数,但我只提供了2个。
有没有办法在Python中用map函数来进行替换呢?
5 个回答
2
replace的第一个参数应该是一个函数;而你现在的写法像是在尝试调用一个函数。
别用map了。用这个:
row = [x.replace(something, other) for x in row]
6
在这里,最符合Python风格的写法可能是使用列表推导式:
row = [ x.replace('\'', "\\'") for x in row ]
26
map( lambda s: s.replace(...), row )
[s.replace(...) for s in row]
或者使用列表推导式