vs2017python使用cv库函数没有自动补全_「Python」在VS Code中编写Python (文件模板、环境配置、调试运行、setting文件、提示与格式化、三方库的自动补全等)...-程序员宅基地

技术标签: vs2017python使用cv库函数没有自动补全  

目录

1、VS Code中安装Python扩展

2、Python文件模板(代码块)

3、python环境设置

4、编写一个hello wolrd并运行。

5、断点调试

6、代码格式化与自动补全

代码分析与格式化

第三方库的自动补全

7、关于setting.json与设置

如何打开【setting.json】呢?

用户/工作区/文件夹设置

setting文件与VS Code自身设置。

用惯了PyCharm,突然心血来潮的想体验下VS Code 中写Python是什么体验。

研究了一番,做个简单整理吧。

不是很全面,算是对网上其他博客中很多没有提到的点的一些补充吧,其他小伙伴可以参考着看。

首先Python(Anaconda),VS Code的安装就不废话了。

直接说重点:

1、VS Code中安装Python扩展

是对python语法的支持,还有一些格式化、调试、提示还有jupyter等。

2、Python文件模板(代码块)

在PyCharm中有设置Python文件模板的方法,就是在新建的py文件中,自带一些编码格式设置、作者日期标注等等。在VS Code中没有这个选项,但是有“用户代码块”的功能,也可以实现PyCharm中的这种功能,并且还能实现更丰富的功能。

在左下角点击【设置】→【用户代码块】,在弹出的搜索筐中选中【python】语言,就会打开“python.json”文件,

如下在打开的【python.json】中编辑如下代码

内容(供复制):

{

"PYHEAD":

{

"prefix": "pyhead",

"body":

[

"#!/usr/bin/env python",

"# -*- coding:utf-8 -*-",

"# @FileName :$TM_FILENAME",

"# @Time :$CURRENT_YEAR/$CURRENT_MONTH/$CURRENT_DATE $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND",

"# @Author :Raink",

]

},

}

说明一点,别把我名字复制去不改!

里面的格式,以及“prefix”、“body”都是不可变的,其他的均可自定义。

除此之外,你还可以把其他常用的也编辑成代码块,比如方法的定义结构、双层for循环、if-else结构等。

编辑好进行保存。

新建一个py文件,在其中输入“pyhead”(上面 json中所定义的),回车,就会得到如下效果。

3、python环境设置

在左下角,

点击这里,就能看到目前所有的python环境(可能会多一步,要先点击选择 工作空间/文件夹):

选择需要的环境即可。

4、编写一个hello wolrd并运行。

编写代码很简单,这里不说了,重点说一下如何运行。

右键会看到很多运行方式:

选择最基本的【在终端中运行python文件】如下:

5、断点调试

打断点的方法你一定会的。

如何调试呢。

点击左侧的调试,点击【运行和调试】,在搜索筐中选择【python file】

会创建一个【launch.json】,这个是调试所必须的。里面的configurations,就是调试配置。

主要的是“program”,默认是当前文件,就是调试当前选中文件。

你也可以新建一个调试配置(在configurations后面的方括号内,新增一个{name:xx, type:xx……}),修改name属性,修改program属性以指定以某个文件作为主入口,这样就能在左侧运行的下拉筐中看到了。

接着点击左边的运行调试按钮,就可以调试了。

6、代码格式化与自动补全

代码分析与格式化

写完代码后,我们通常还需要的是代码的分析、格式化等。

如果第一次右键选择【格式化文档】,或者【文档格式化设置→python】时,会弹出是否要安装所需的包的选项:

解释一下:autopep8是代码格式化工具,pylint是代码分析于提示工具。两个都是vscode推荐的python包,可以选择安装,也可以选择使用其他的。

我这里都选择安装,点击【yes/install】后,会需要选择安装方式用pip还是conda(我装的anaconda),

点选后,vs code会在终端创建安装命令并执行(也可以手动pip install)

安装完之后,基本就能正常的开始编写代码了。

如果你想安装其他的代码分析提示工具,比如flake8,打开用户设置【setting.json】文件,

添加上【"python.linting.flake8Enabled": true,】,就会在右下角弹出是否要安装的提示,想之前一样安装就好。

或者也可以先pip install手动安装,然后再添加属性。

第三方库的自动补全

完成以上步骤后,基本能满足简单的开发,但是对于用到的的第三方库,有些就无法自动补全。

比如我要用opencv,输入【cv2.】没有很全的提示,即使手写了cv2.imread(xxx),也会报“model 'cv2' has no 'imshow'...”

需要做如下操作:

在setting中增加如下配置:(如下所有地址根据个人安装情况进行调整)

{

"python.jediEnabled": true,

... ...

"python.linting.pylintPath":"C:\\Anaconda3\\pkgs\\pylint-2.5.0-py37_1\\Scripts\\pylint.exe",

"python.autoComplete.extraPaths": [

"C:\\Anaconda3\\Lib\\site-packages",

"C:\\Anaconda3\\Scripts"

],

}

这样能解决大部分的第三方库的自动补全,还有些不能不全的,建议安装python自动补全神奇:Kite

https://www.kite.com/

如何安装与使用可以访问github页面:https://github.com/kiteco/vscode-plugin#installation

简单总结:首先要下载个本机的引擎,安装好后使用git账户登录,如下图。

接着在VS Code中搜索Kite插件安装,然后重启,会在右下角看到如下的图,这样就可以开心的编写代码了。

7、关于setting.json与设置

VS Code的各种设置基本都是使用json文件的,有非常多的可自定义的设置。

对于编码中的很多用户设置,也是可以在json中进行配置。

如何打开【setting.json】呢?

【Ctrl+Shift+p】,搜索“setting json”,就能看到常用的几个设置文件,

全局默认的用户设置选择【打开设置】,针对某个工作区的、或者正对某个项目文件夹的,选择对应的即可。

打开后就能手动设置了。

--------

另一种打开方式:左下角 齿轮图标→【设置】,就能看到带界面的设置页,也是三个标签。

在对应标签下,向下翻,找到一个【在setting.json中编辑】的链接,点击也可打开。

用户/工作区/文件夹设置

很好理解,用户设置就是针对VS Code的全局设置,工作区就是针对某个工作区所特有的,文件夹就是针对某个项目文件所应用的设置。比如工作区中会列出该工作区所包含的文件夹。

我的python项目,新建后是没有单独的setting.json文件的,一种是在选择python环境时,会需要选择环境所应用的范围

选择了文件夹(比我我上图的demo文件夹),就会在该文件夹下的【.vscode】目录下生成【setting.json】,接着选择完环境后,就会在该问价中写入。

如果选择的时工作空间(workspace),就会把上面的内容写道工作空间中的setting文件中,你也可以写到全局中去。

setting文件只要你知道了地方,完全可以手动创建,手动编辑。

setting文件与VS Code自身设置。

个人感觉微软在逐渐弱化通过文件来设置的方式。

毕竟如果我乱改,或者一不小心改错了,怎么办?

有些设置,通过 左下角 齿轮图标→【设置】,去查看是有设置的,但是setting文件中并没有。通过个人验证,

是这样的逻辑:

setting.json更像是一种保留方式,vs code自身设置(UI)更像是一种全集,两个都可以修改,对于同一属性,会保留最后修改的那个,如果有冲突,假设最后通过UI设置修改,则会把setting文件中的相同的注销掉。如果最后修改的是setting文件,UI中的会在下次打开时变成和setting中一样的。

如果你不放心修改setting文件,你可以在UI的设置中找到搜索找到对应属性进行修改。是一样的。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39694264/article/details/111023679

智能推荐

稀疏编码的数学基础与理论分析-程序员宅基地

文章浏览阅读290次,点赞8次,收藏10次。1.背景介绍稀疏编码是一种用于处理稀疏数据的编码技术,其主要应用于信息传输、存储和处理等领域。稀疏数据是指数据中大部分元素为零或近似于零的数据,例如文本、图像、音频、视频等。稀疏编码的核心思想是将稀疏数据表示为非零元素和它们对应的位置信息,从而减少存储空间和计算复杂度。稀疏编码的研究起源于1990年代,随着大数据时代的到来,稀疏编码技术的应用范围和影响力不断扩大。目前,稀疏编码已经成为计算...

EasyGBS国标流媒体服务器GB28181国标方案安装使用文档-程序员宅基地

文章浏览阅读217次。EasyGBS - GB28181 国标方案安装使用文档下载安装包下载,正式使用需商业授权, 功能一致在线演示在线API架构图EasySIPCMSSIP 中心信令服务, 单节点, 自带一个 Redis Server, 随 EasySIPCMS 自启动, 不需要手动运行EasySIPSMSSIP 流媒体服务, 根..._easygbs-windows-2.6.0-23042316使用文档

【Web】记录巅峰极客2023 BabyURL题目复现——Jackson原生链_原生jackson 反序列化链子-程序员宅基地

文章浏览阅读1.2k次,点赞27次,收藏7次。2023巅峰极客 BabyURL之前AliyunCTF Bypassit I这题考查了这样一条链子:其实就是Jackson的原生反序列化利用今天复现的这题也是大同小异,一起来整一下。_原生jackson 反序列化链子

一文搞懂SpringCloud,详解干货,做好笔记_spring cloud-程序员宅基地

文章浏览阅读734次,点赞9次,收藏7次。微服务架构简单的说就是将单体应用进一步拆分,拆分成更小的服务,每个服务都是一个可以独立运行的项目。这么多小服务,如何管理他们?(服务治理 注册中心[服务注册 发现 剔除])这么多小服务,他们之间如何通讯?这么多小服务,客户端怎么访问他们?(网关)这么多小服务,一旦出现问题了,应该如何自处理?(容错)这么多小服务,一旦出现问题了,应该如何排错?(链路追踪)对于上面的问题,是任何一个微服务设计者都不能绕过去的,因此大部分的微服务产品都针对每一个问题提供了相应的组件来解决它们。_spring cloud

Js实现图片点击切换与轮播-程序员宅基地

文章浏览阅读5.9k次,点赞6次,收藏20次。Js实现图片点击切换与轮播图片点击切换<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/ja..._点击图片进行轮播图切换

tensorflow-gpu版本安装教程(过程详细)_tensorflow gpu版本安装-程序员宅基地

文章浏览阅读10w+次,点赞245次,收藏1.5k次。在开始安装前,如果你的电脑装过tensorflow,请先把他们卸载干净,包括依赖的包(tensorflow-estimator、tensorboard、tensorflow、keras-applications、keras-preprocessing),不然后续安装了tensorflow-gpu可能会出现找不到cuda的问题。cuda、cudnn。..._tensorflow gpu版本安装

随便推点

物联网时代 权限滥用漏洞的攻击及防御-程序员宅基地

文章浏览阅读243次。0x00 简介权限滥用漏洞一般归类于逻辑问题,是指服务端功能开放过多或权限限制不严格,导致攻击者可以通过直接或间接调用的方式达到攻击效果。随着物联网时代的到来,这种漏洞已经屡见不鲜,各种漏洞组合利用也是千奇百怪、五花八门,这里总结漏洞是为了更好地应对和预防,如有不妥之处还请业内人士多多指教。0x01 背景2014年4月,在比特币飞涨的时代某网站曾经..._使用物联网漏洞的使用者

Visual Odometry and Depth Calculation--Epipolar Geometry--Direct Method--PnP_normalized plane coordinates-程序员宅基地

文章浏览阅读786次。A. Epipolar geometry and triangulationThe epipolar geometry mainly adopts the feature point method, such as SIFT, SURF and ORB, etc. to obtain the feature points corresponding to two frames of images. As shown in Figure 1, let the first image be ​ and th_normalized plane coordinates

开放信息抽取(OIE)系统(三)-- 第二代开放信息抽取系统(人工规则, rule-based, 先抽取关系)_语义角色增强的关系抽取-程序员宅基地

文章浏览阅读708次,点赞2次,收藏3次。开放信息抽取(OIE)系统(三)-- 第二代开放信息抽取系统(人工规则, rule-based, 先关系再实体)一.第二代开放信息抽取系统背景​ 第一代开放信息抽取系统(Open Information Extraction, OIE, learning-based, 自学习, 先抽取实体)通常抽取大量冗余信息,为了消除这些冗余信息,诞生了第二代开放信息抽取系统。二.第二代开放信息抽取系统历史第二代开放信息抽取系统着眼于解决第一代系统的三大问题: 大量非信息性提取(即省略关键信息的提取)、_语义角色增强的关系抽取

10个顶尖响应式HTML5网页_html欢迎页面-程序员宅基地

文章浏览阅读1.1w次,点赞6次,收藏51次。快速完成网页设计,10个顶尖响应式HTML5网页模板助你一臂之力为了寻找一个优质的网页模板,网页设计师和开发者往往可能会花上大半天的时间。不过幸运的是,现在的网页设计师和开发人员已经开始共享HTML5,Bootstrap和CSS3中的免费网页模板资源。鉴于网站模板的灵活性和强大的功能,现在广大设计师和开发者对html5网站的实际需求日益增长。为了造福大众,Mockplus的小伙伴整理了2018年最..._html欢迎页面

计算机二级 考试科目,2018全国计算机等级考试调整,一、二级都增加了考试科目...-程序员宅基地

文章浏览阅读282次。原标题:2018全国计算机等级考试调整,一、二级都增加了考试科目全国计算机等级考试将于9月15-17日举行。在备考的最后冲刺阶段,小编为大家整理了今年新公布的全国计算机等级考试调整方案,希望对备考的小伙伴有所帮助,快随小编往下看吧!从2018年3月开始,全国计算机等级考试实施2018版考试大纲,并按新体系开考各个考试级别。具体调整内容如下:一、考试级别及科目1.一级新增“网络安全素质教育”科目(代..._计算机二级增报科目什么意思

conan简单使用_apt install conan-程序员宅基地

文章浏览阅读240次。conan简单使用。_apt install conan