微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我们对 Python 标准库中的输入导入列表有何要求?

如何解决我们对 Python 标准库中的输入导入列表有何要求?

我正在解决 Leetcode 中的一些问题:https://leetcode.com/problems/remove-duplicates-from-sorted-array/

我找到了答案:Given a sorted array,remove the duplicates in-place such that each element appear only once and return the new length

这个问题的答案也可以是:

    class Solution():
        def removeDuplicates(self,nums):
            i = 0
            while i < len(nums)-1:
                if nums[i] == nums[i+1]:
                    del nums[i]
                else:
                    i += 1
   
           return (len(nums),nums)

    numbers = [1,1,3,4,5,7,9,9]
    some_object = Solution()
    ask_me = some_object.removeDuplicates(numbers)
    print (ask_me)

我找不到为什么应该在代码中应用打字的问题的答案。另一方面,以下代码也能很好地工作:

    from typing import List

    class Solution(object):
        def removeDuplicates(self,nums: List[int]) -> int:
            i = 0
            while i < len(nums)-1:
                if nums[i] == nums[i+1]:
                    del nums[i]
                else:
                    i += 1

            return (len(nums),nums)


    numbers = [1,9]
    some_object = Solution()
    ask_me = some_object.removeDuplicates(numbers)
    print (ask_me)

所以,我想澄清上述代码的各个方面。也许有人可以帮助我和其他感兴趣的人并澄清我们对 Python 标准库中的输入导入列表的要求是什么?

解决方法

编程语言要么是静态类型的,要么是动态类型的。

在 java 或 c++ 等具有静态类型的语言中,必须在编译时知道变量的类型。如果我们声明一个变量,编译器应该知道(或可推断)它是数字、字符串还是布尔值。由于不需要在执行时动态检查类型(它在运行前检查),静态类型语言本质上在运行时具有更好的性能。

Python 是动态类型的,变量的类型只有在运行程序时才知道。在 python 中添加类型不会影响性能。您可以在没有类型注释的情况下编写代码,它会运行。 打字只是帮助您编写更清晰的代码,这是一个非常重要的方面。程序员就像作者,你必须写出更好更干净的代码,这样其他程序员才能轻松理解你的代码。它也对您有帮助,因为将来如果您需要重新访问您的代码,它将帮助您理解。

在科技公司中,不是一个人维护代码,而是有一个团队不断阅读和维护代码。

忘记说了。当您添加类型注释时,您的idee 将向您显示可用的方法。假设您注释

 my_variable:str

当你输入这个变量时,“my_variable”。在点之后,您的 IDE 将向您显示所有字符串方法。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。