leecode上的代码到pycharm运行解决历程

简介: leecode上的代码到pycharm运行解决历程

leecode上的代码到pycharm运行解决历程

1、事情的起因:

小伙伴私聊我说:leecode上的代码到pycharm运行出错了,我一运行的确输出是是list未定义

网络异常,图片无法展示
|

网络异常,图片无法展示
|

2、于是我开始思考这个问题:

为什么在leecode(OJ在线判题系统)上面是对的,在pycharm就出错

这时候我的目光准时到了leecode的第一行代码:

class Solution:
    def generateMatrix(self, n: int) -> List[List[int]]:
复制代码

3、->的意义:

这个奇怪的符号    ->   在函数定义是什么意思呢?

->常常出现在python函数定义的函数名后面,为函数添加元数据,描述函数的返回类型,从而方便开发人员使用。

比如说:

def add(x, y) -> int:
  return x+y
复制代码

这里面,元数据表明了函数的返回值为int类型。

这样做的好处:使用预期的类型来注释参数,然后在函数返回值验证时检验参数的类型或者将其强制转换成预期的类型。

4、代码修改部分(leecode59矩阵II)

知道这些我们在代码稍作修改:

class Solution:
    def generateMatrix(self, n: int):
        # 初始化要填充的正方形
        matrix = [[0] * n for _ in range(n)]
        left, right, up, down = 0, n - 1, 0, n - 1
        number = 1  # 要填充的数字
        while left < right and up < down:
            # 从左到右填充上边
            for x in range(left, right):
                matrix[up][x] = number
                number += 1
            # 从上到下填充右边
            for y in range(up, down):
                matrix[y][right] = number
                number += 1
            # 从右到左填充下边
            for x in range(right, left, -1):
                matrix[down][x] = number
                number += 1
            # 从下到上填充左边
            for y in range(down, up, -1):
                matrix[y][left] = number
                number += 1
            # 缩小要填充的范围
            left += 1
            right -= 1
            up += 1
            down -= 1
        # 如果阶数为奇数,额外填充一次中心
        if n % 2:
            matrix[n // 2][n // 2] = number
        return matrix
a = Solution()
print(a.generateMatrix(3))
复制代码

5、通用修改模板

#删除  -> List[List[int]]:    ,但是不要忘记加 : 哦!(不要问我为什么知道的,呜呜呜)
#都是报错带来的血与痛的教训
#后面再加上
#a = 类名()
#print(a.函数名(输入的值))
#向这题就打出
a = Solution()
print(a.generateMatrix(3))
#大功告成了!
复制代码

6、得到结果

就得到了我们心心念念的结果:

网络异常,图片无法展示
|

7、片尾感谢

文末感谢:叶同学,感谢提问,得以让我们共同学习进步!



目录
相关文章
|
2月前
|
IDE 网络安全 开发工具
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
本文介绍了如何使用VS Code通过Remote-SSH插件连接远程服务器进行代码开发,并与PyCharm进行了对比。作者认为VS Code在连接和配置多个服务器时更为简单,推荐使用VS Code。文章详细说明了VS Code的安装、远程插件安装、SSH配置文件编写、服务器连接以及如何在连接后切换文件夹。此外,还提供了使用密钥进行免密登录的方法和解决权限问题的步骤。
1007 0
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
|
2月前
|
IDE 网络安全 开发工具
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
489 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
|
4月前
|
计算机视觉 Python
opencv在pycharm不能自动补全代码
opencv在pycharm不能自动补全代码
44 0
|
4月前
|
Python
PyCharm中运行jupyter
PyCharm中运行jupyter
103 0
|
4月前
|
Shell Python
如何将PyCharm中的终端运行前面的PS如何修改成当前环境
这篇文章介绍了如何在PyCharm的终端中修改命令提示符(PS)以反映当前激活的环境,通过更改PyCharm设置中的Shell Path实现。
|
5月前
|
语音技术 开发者 Python
语音识别,python运行H ~W~,要使用英符,执行Python的流程是输入Python,回车,解释器的两大功能,翻译代码,提交计算机运算,多行代码运行,写一个py文件,pycharm安
语音识别,python运行H ~W~,要使用英符,执行Python的流程是输入Python,回车,解释器的两大功能,翻译代码,提交计算机运算,多行代码运行,写一个py文件,pycharm安
|
7月前
|
测试技术 开发工具 iOS开发
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(2)
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(2)
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(2)
|
7月前
|
数据采集 数据挖掘 测试技术
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(1)
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(1)
Python如何快速定位最慢的代码?_pycharm找到执行时间长的代码(1)
|
6月前
03-pycharm自定义背景图,写代码能看美女,就是这么优雅
03-pycharm自定义背景图,写代码能看美女,就是这么优雅
45 0