python-3.x - 在 lambda 中使用 find 传递两个变量
问题描述
我正在学习关于 python 的课程,我们正在研究 lambda 表达式,但在尝试传递两个变量时我被卡住了。考虑一下:
lis = ['today', 'is', 'a', 'nice', 'day']
print(list(map(lambda x: x.find('i'), lis)))
output:
[-1, 0, -1, 1, -1]
但是,这只返回 -1:
s = 'today is a nice day'
def find_char(sentence, string):
sentence = sentence.split()
return list(map(lambda x, y: print(x), sentence, string))
print(find_char(s, 'i'))
lambda 函数只传递第一个词,即今天,而不是每个词。为什么会发生这种情况,我怎样才能让函数返回与使用 lambda 的第一个方法相同的列表?
谢谢你。
解决方案
推荐阅读
- google-analytics - Eventbrite iframe 和 Google Analytics - 无法保留流量来源信息
- javascript - 使用 javascript 为下一个字符着色
- rxjs - 为什么一些 RxJS 6 运算符采用谓词和投影/选择器?
- python - Python错误ValueError:未知网络接口无
- django - 部署后媒体文件不显示
- windows-10 - 如何在使用 Vagrant 和 VirtualBox 创建的 Windows 10 和 CentOS7 虚拟机之间共享(config.vm.synced_folder)目录
- scala - 在批次之间持久存在的内存缓存中激发结构化流式传输
- python - 芹菜工人收到任务但未执行
- vba - Access 2016 中的表单子报表打印
- powershell - SCOM 2012 Windows 服务监控目标对象