为了账号安全,请及时绑定邮箱和手机立即绑定

返回并打印在 Python 中给出不同的输出

返回并打印在 Python 中给出不同的输出

POPMUISE 2022-06-02 14:35:40
我正在尝试合并两个数组并返回排序后的数组(leetcode 上的#88),这是我使用的代码:class Solution:    def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:        if (m > 0 and n > 0):            merged = nums1[0:m] + nums2[0:n]            result = sorted(merged)            print(result)            return result输入是[1,2,3,0,0,0,0]3[2,5,6]3输出是这样的 -有人可以解释为什么 print 和 return 给出不同的输出吗?
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

转到问题并选择python3作为语言,我们会看到以下存根:


class Solution:

    def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:

        """

        Do not return anything, modify nums1 in-place instead.

        """

请注意注释 - 测试框架正在查看 nums1 的状态,而不是您返回的值 - 事实上,规范是不返回任何内容。


您正在打印返回变量,这实际上就是您返回的内容。但是这个问题实际使用的变量不是这个函数的返回值。


阅读规范,无论以何种格式呈现,在编写任何内容之前始终是一个很好的第一步。


查看完整回答
反对 回复 2022-06-02
  • 1 回答
  • 0 关注
  • 175 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号