系统:WIN10
IDE:MS VSCode
语言:Python 版本 3.7.3
库:熊猫版本 1.0.1
数据来源:下面提供的基础数据
数据集:下面提供的基础数据
由于某种原因,我在尝试使用"map"函数映射转换器函数(我使用 lambda 构建(来迭代样品温度列表时遇到了问题。下面提供了示例代码,它不断抛出以下错误:类型错误:(( 需要 0 个位置参数,但给出了 1
个采取了步骤:
- 测试了独立的代码片段,以确保自
- 在线搜索错误代码,找不到任何内容
法典:
temps = [('Berlin', 29), ('Cairo', 36), ('Buenos Aires', 19), ('Los Angeles', 26), ('Tokyo', 27), ('New York', 28), ('London', 22), ('Beijing', 32)]
c_to_f = lambda: (data[0], (9/5)*data[1] + 32)
list(map(c_to_f, temps))
错误
TypeError: () takes 0 positional arguments but 1 was given
map
函数会将temps
的每个元素作为参数传递给c_to_f
。
更改c_to_f
定义,使其需要一个参数:
def c_to_f(data):
return data[0], (9/5)*data[1] + 32
或者只是做:
list(map(lambda data: (data[0], (9/5)*data[1] + 32), temps))