【发布时间】:2020-07-31 08:34:22
【问题描述】:
metro_areas = [
('Tokyo', 'JP', 36,933, (35.689722, 139.591593)),
('Delhi NCR', 'IN', 21.935, (38.52938, 77.39456)),
('Mexico City', 'MX', 30.194, (19.3452, -99.18284)),
('New York-Newark', 'US', 20.104, (40.80381, -74.5821)),
('Sao Paulo', 'BR', 19.842, (-23,494921, -49.474743))
]
fmt = '{:15} | {:9.4f} | {:9.4f}'
for name, cc, pop, (latitude, longtitude) in metro_areas:
if longtitude <= 0:
print(fmt.format(name, latitude, longtitude))
运行代码出现错误
Traceback (most recent call last):
File "tuple_unpacking.py", line 33, in <module>
for name, cc, pop, (latitude, longtitude) in metro_areas:
ValueError: too many values to unpack (expected 4)
这与教科书中的代码完全相同,但出现错误。
我应该在代码中修复什么?
【问题讨论】:
-
在第一行,你写的是
36,933而不是36.933 -
同样在最后一个纬度值:
-23,494921应该是-23.494921