我估计你的 mylist 是一个list,里面存的是格式化字符串,而 mydict 则是一个记录格式化字符串中所需要用到的参数信息,比如类似于下面的代码
mylist = ["my name is %(name)s", "and my age is %(age)d"]
mydict = {'name': 'Tom', 'age': 13}
result = map(lambda x: x % mydict, mylist)
for s in result:
print s
就可以得到下面的打印
my name is Tom
and my age is 13
另外一种简塌可能,就是 mylist 里存的是整数,而 mydict 是一个整数,这样了话,map语句是将行前 mylist 里每一个整数对 mydict 进行取余操作,这个拦带圆有点不太合理,没必要对一个整数命名成 mydict。
x是定义的变量用来毁余遍纤陪滚历mylist中乱棚的所有值,mydict是任意的数,x%mydict就是mylist中的各个数分别对mydict求余。
eg:mylist = [1,2,3,4]
map(lambda x:x%3,mylist) -->result:[1,2,0,1]
其实这句话,你应漏唤漏该理解map和lambda是链桐什么意思。
1. lambda生成匿名函数
2. map(func,seq) 就是将函数作用在序列的每个元素上,然后创建由函数返回值组返烂成的列表。
3. map(lambda x: x % mydict, mylist),遍历mylist每个元素,执行lambda函数,并返回一个列表
这是一个方程式,也就是将所有的元素,遍历在函数上运行一遍,赋值给匿名函数