关于旅行者二维移动的问题

来源:12-5 reduce

Seancatom

2018-09-28

from functools import reduce
import numpy as np

list_x = [(1,3), (2,-2),(-2,3)]
r = reduce(lambda x, y: np.sum([x, y], axis = 0), list_x, (0,0))
print(r)

这是我目前想到的最简单的代码,如果还有更加简单的欢迎告知~

写回答

5回答

阿里奇奇

2019-04-23

list_x = [(1, 2), (2, 3), (3, 4)]

r = reduce(lambda x, y : (x[0] + y[0] , x[1]+y[1]), list_x)


8
0

这位同学很懒

2020-07-18

from functools import reduce
# 导入reduce模块

start = (0,0)
#建立(x,y)坐标,起始点为(0,0)

step = [(1,3),(-2,5),(10,11)]
#移动步数,横坐标朝x方向移动,纵坐标朝y方向移动

final = reduce(lambda now,next : (now[0] + next[0], now[1] + next[1]), step, start)
#最终坐标 = reduce(lambda 现坐标,下一步:(现坐标x+下一步x),(现坐标y+下一步y),移动步数为参数列表,起始点)

print(final)
#打印最终坐标


1
0

爱吃apple的阿狸

2019-11-14

我的解决方法

# 初始位置
start = (0, 0)

#经过的位置
steps = [(1, 3), (2, -2), (-2, 3)]

#计算
r = reduce(lambda current_pos, new_step: list(map(lambda x, y:x + y, current_pos, new_step)), steps, start)

#结果坐标位置
print(r)


1
0

慕盖茨7080953

2020-02-12

那个我的vscode中没有numpy这个模块,那我应该配置哪一个


0
0

慕粉2056486049

2018-10-28

r = sum(x[0] for x in list_x), sum(x[1] for x in list_x)


有点粗暴  O(∩_∩)O哈哈~

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14447 学习 · 4438 问题

查看课程