Desperate struggle667 2022-10-13 12:25 采纳率: 76.2%
浏览 51
已结题

python中for循环range()的问题

在python中遇到一共for循环和range的问题
为啥结果d=0呀?不应该是0 1 2 吗?哪里出问题了?

def euclidean_distance(one_sample, x):
    k=x.shape[0]
    print(k)
    print("中心点",x)
    print("样本",one_sample)
    for d in range(k):
        print("d",d)
        print("单个样本",one_sample)
        print("中心",x[d])
        distances= np.sum((x[d]-one_sample)**2)
        print("距离",distances)
        return distances

运行结果是:
3
中心点 [[4.8 3.1 1.6 0.2]
 [6.7 3.  5.  1.7]
 [5.1 3.5 1.4 0.2]]
样本 [5.9 3.  5.1 1.8]
d 0
单个样本 [5.9 3.  5.1 1.8]
中心 [4.8 3.1 1.6 0.2]
距离 16.029999999999998
  • 写回答

3条回答 默认 最新

  • 请叫我问哥 Python领域新星创作者 2022-10-13 12:35
    关注

    最后的return语句要拿到for循环外面,不然循环一次就结束了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月21日
  • 已采纳回答 10月13日
  • 创建了问题 10月13日

悬赏问题

  • ¥15 救!ENVI5.6深度学习初始化模型报错怎么办?
  • ¥30 eclipse开启服务后,网页无法打开
  • ¥30 雷达辐射源信号参考模型
  • ¥15 html+css+js如何实现这样子的效果?
  • ¥15 STM32单片机自主设计
  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000