【软件使用】VScode中编辑python

珠玉在前:

https://code.visualstudio.com/docs/languages/python

https://blog.csdn.net/m0_37192554/article/details/83714975

http://www.cppcns.com/jiaoben/python/151875.html

 

关于常规插件

https://code.visualstudio.com/docs/languages/python

1. Python插件(vscode使用python的最基本插件:代码调试、提示、重构等等等) 

https://marketplace.visualstudio.com/items?itemName=ms-python.python

2. Code Runner(支持多种语言,可以直接运行代码片段) 

https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner

3. Visual Studio IntelliCode(为Python/Java/Javacript提供AI辅助开发特性,也有适用于C++/C#的版本) 

https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.vscodeintellicode

https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.VSIntelliCode

4. Anaconda Extension Pack(增强anaconda用户在vscode上的体验) 

https://marketplace.visualstudio.com/items?itemName=ms-python.anaconda-extension-pack

5. Jupyter(对jupyternotebook的支持)

【软件使用】VScode中编辑python_第1张图片

【软件使用】VScode中编辑python_第2张图片


关于Linting

YAFP:python格式化工具

http://www.cppcns.com/jiaoben/python/151875.html

pip install yapf

 

flake8:辅助检测Python代码是否规范(和pyLint一样是静态代码检测)

https://www.maixj.net/ict/flake8-19061

pip install flake8

文件/首选项/设置,搜索flake,在Python中使能flake8

【软件使用】VScode中编辑python_第3张图片

 

 


关于调试

 

1. 用于监视的变量列表中的变量,可以通过F2进行重命名:

【软件使用】VScode中编辑python_第4张图片

 

2. 保存变量,不至于重新启动后所有变量为空(类似于matlab)。

这样在调试阶段就可以只加载一次大容量文件,而后续测试只需要load保存好的变量就可以了,节省加载文件的时间。

参考:https://blog.csdn.net/lrs1353281004/article/details/81544490

 

2.1 使用dill库

安装:pip install dill

import dill

DATA_DIR = "data"   # "../data" 已经在同一目录中了: data
Session_DIR = os.path.join(DATA_DIR,"globalsave.pkl")

Test = False # True
if Test:
    try:
        fld_xlsx = open_workbook(os.path.join(DATA_DIR, "a1.xlsx"), "rb")
        # 保存变量
        dill.dump_session(Session_DIR)
    except BaseException as identifier:
        print("打开异常:" + str(identifier))
else:
    # 加载变量
    dill.load_session(Session_DIR)

 

2.2 使用pickle库(实现数据的序列化和反序列化),保存某个或多个变量/对象

https://blog.csdn.net/lrs1353281004/article/details/81544490

https://www.jianshu.com/p/dcc2065091cc

https://www.cnblogs.com/pzxbc/archive/2012/03/18/2404715.html

pickle.dump(obj, file, [,protocol]) 注解:将对象obj保存到文件file中去。

file:对象保存到的类文件对象。file必须有write()接口, file可以是一个以'w'方式打开的文件或者一个StringIO对象或者其他任何实现write()接口的对象。

如果protocol>=1,文件对象需要是二进制模式打开的。

protocol为序列化使用的协议版本:

0:ASCII协议,所序列化的对象使用可打印的ASCII码表示;

1:老式的二进制协议;

2:2.3版本引入的新二进制协议,较以前的更高效。其中协议0和1兼容老版本的python。protocol默认值为0。
    

pickle.load(file) 注解:从file中读取一个字符串,并将它重构为原来的python对象。

file:类文件对象,有read()和readline()接口。

import dill
import pickle
import pprint

Session_DIR = os.path.join(DATA_DIR,"globalsave.pkl") 
SingleVal_DIR = os.path.join(DATA_DIR,"fld_xlsx.pkl")
 
Test = False # True
if Test:
    try:
        fld_xlsx = open_workbook(os.path.join(DATA_DIR, "a1.xlsx"), "rb")
        # 保存变量
        # dill.dump_session(Session_DIR)
        with open(SingleVal_DIR, 'wb') as f:    # wb以二进制格式打开一个文件只用于写入
            pickle.dump([fld_xlsx, SingleVal_DIR], f)   # fd.close()  # 务必
    except BaseException as identifier:
        print("打开异常:" + str(identifier))
else:
    # 加载变量
    # dill.load_session(Session_DIR)
    try:
        if(os.path.getsize(SingleVal_DIR) > 0):
            with open(SingleVal_DIR, 'rb' ) as f_pkl:  # rb以二进制格式打开一个文件用于只读(默认)
                fld_xlsx, tt = pickle.load(f_pkl) # fd.close
                pprint.pprint("文件大小为:{:d}".format(os.path.getsize(SingleVal_DIR)))
        else:
            pprint.pprint("文件大小为:{:d}".format(os.path.getsize(SingleVal_DIR)))
    except BaseException as message:   # EOFError
        pprint.pprint(str(message))

 

2.3 使泳scipy保存数据为.mat格式

https://blog.csdn.net/weixin_40446557/article/details/88219673

 

 

 


关于Python库的使用和查询

 

Python学习笔记—常用库简介:https://blog.csdn.net/qq_38265137/article/details/78321129

Python常用库简介(持续更新):https://www.jianshu.com/p/04f398b32da1

Python标准库介绍:https://www.cnblogs.com/chengjian-physique/p/8563133.html

 

 


快捷键设置

【软件使用】VScode中编辑python_第5张图片

【软件使用】VScode中编辑python_第6张图片

你可能感兴趣的:(软件使用)