在visual studio code中配置python以及解决中文乱码问题

安装好 visual stuido code (下面简称 “ VSC ”)后,要想使用它运行调试 python 代码还需要做一些工作以解决下列问题:

  • 搭建 python 环境
  • print 打印中文出现乱码

一、搭建 python 环境

  1. 在 VSC 中点击 F1 键,弹出控制台,输入 ext install
  2. 界面左侧弹出扩展窗格,输入python,确认,开始搜索
  3. 下载发布者为Don Jayamanne 的 Python 插件
    (下载过程中不要切换窗口,不要做其他任何操作,否则会中断下载,下载时间略长,耐心等待)
  4. 安装完毕
  5. “文件”-“首选项”-“用户设置”,打开用户配置文件settings.json,再其中大括号内输入计算机中 python.exe 的完整路径(扩展名".exe"可以省略),注意把单斜线改成双斜线。

    "python.pythonPath":"D:\Program Files\Python35\python"

  6. F1 键调出控制台,输入task,选择任务:配置任务运行程序,打开tasks.json文件,修改以下信息:

    "command": "D:\Program Files\Python35\python"(python.exe的具体路径)

    "args": ["${file}"]

完成后,就可以在 VSC 中运行(ctrl+shift+b)和调试(F5) python 代码了。

二、print 打印中文出现乱码

如果直接这样运行 python 代码,会出现 print 打印出来的中文是乱码,要解决这个问题有三种办法:

1. 增加系统全局变量
以 windows 系统为例,添加系统变量:

PYTHONIOENCODING=UTF8

2. 修改 VSC 配置文件
F1 键调出控制台,输入task,选择任务:配置任务运行程序,打开tasks.json文件,增加以下信息:

    "options": {"env":{"PYTHONIOENCODING": "UTF-8"}
}

3.在代码里更改编码
在每个需要中文的 python 文件中添加如下代码:

import io
import sys
#改变标准输出的默认编码
sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')

使用方法1和方法2需要重启 VSC。
方法1可以一劳永逸。

转载于:https://www.cnblogs.com/mick-li/p/5563076.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为加码布局 VR/AR趁势启航

来源:VR每日必看乘5G东风,VR/AR空间打开。随着5G的到来,5G高速和超低时延的特性将完美应对VR/AR发展的短板,商用牌照的发放将带领5G逐渐进入放量阶段,内外巨头均已开始大力布局。分析人士认为:第一阶段场景…

linux系列之常用运维命令整理笔录

本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文…

C++ 传递字符串数组给函数参数

C 传数组给一个函数,数组类型自动转换为指针类型,因而传的实际是地址。 对于传入字符串数组同理,所以如果在函数中对传入的字符串数组进行改变,函数外的字符串数组也会同时改变 举个简单的例子: void change(char s…

Android高德地图自定义Markers的例子

下文为各位重点介绍关于Android高德地图自定义Markers的例子,希望这篇文章能够让各位理解到Android高德地图自定义Markers的方法。 之前的博客里说了地图的嵌入和定位,今天就说说在地图上显示一些我们想要的。在地图中有自带的Markers(标记&a…

javaweb教务管理系统_基于Java web的教务管理系统

源码编号:B-E00033 点击查看(分类规则)项目类型:Java EE项目(非开源)项目名称:基于Java web的教务管理系统(TeachingSystem)当前版本:V1.0.1版本难度等级:✩✩复杂程度:✩✩ 点击查看难度等级用户类型&…

Science揭秘:为什么“好记性不如烂笔头”?

来源:中国生物技术网你还能记起你小学班长的名字吗?但我相信你肯定能记得同桌的名字,和与其共同经历的种种。但要再问你昨天新来同事的名字,你是否可以不假思索的回答出来?是不是有点儿困难?那为什么你能脱…

十个不可不看的Matlab GUI

截止到2012年6月2日,MatlabCentral上一共有1743个与"gui"有关的program。经过浏览前800个,选出以下比较有趣的程序。其中大部分没有经过测试,有可能无法使用或者功能不够理想,但至少可以作为一个starting point 吧。 Al…

C++链表插入节点函数为什么要传递头节点的二维指针

C链表插入一个节点的代码如下: struct ListNode {int m_value;ListNode * m_next; };void addListNode(ListNode** pHead, int value) {ListNode * pNew new ListNode();pNew->m_value value;pNew->m_next NULL;if (*pHead NULL){*pHead pNew;}else{Lis…

JAVA学习(十)__MessageFormat用法

MessageFormat用来格式化一个消息,通常是一个字符串,比如: String str "Im not a {0}, age is {1,number,short}", height is {2,number,#.#}; 而MessageFormat可以格式化这样的消息,然后将格式化后的字符串插入到模式…

中国机器人产业发展报告(2019)正式发布!

来源:世界机器人大会2019年8月25日,《中国机器人产业发展报告(2019)》于2019世界机器人大会闭幕式上正式发布,该报告为工业和信息化部2019-2021年财政专项《我国机器人产业发展水平评估体系构建与智能机器人产业链增长…

VS2013提示错误应输入表达式

原因是有些语句的空格为中文输入法下输入的空格,在提示错误的地方附近检查一下空格,最好把那附近的空格都用英文输入法再次输入一次

matlab/ansys协同的一个例子

前段时间找了点Matlab与ANSYS协同工作的资料,在我看来所谓协同是ANSYS将结果写到文件然后Matlab读,或者Matlab写数据到文件ANSYS读,协同是通过读写文件实现的。我找了个瞬态分析的例子,写了APDL,将网上找到的ANSYS结果…

security center拒绝访问_Steam被曝出0day提权漏洞,但厂商拒绝修复

近期,全球流行的Steam游戏客户端被曝出0day提权漏洞,影响全球一亿多Steam用户。该漏洞可让机器上的低权限用户以SYSTEM权限运行程序。这意味着恶意软件很可能利用这个漏洞对受害者的机器进行深度破坏。考虑到Steam是一款总用户1.2亿,日常在线…

赵老师_01

1、赵4 老师 课程,第2课 (VS2010) (Console的 空项目) 1.1、项目-->属性-->配置属性-->C/C -->预编译头:  不使用预编译头 1.2、项目-->属性-->配置属性-->C/C -->代码生成-->基本运行时检查:  默认值 1.3、项…

人工智能第一股“旷视科技”赴港递交IPO材料 半年亏损52亿估值280亿

来源: 人工智能和大数据8月25日,人工智能领域“独角兽”旷视科技正式向港交所递交IPO材料。招股书显示,旷视拟采用“同股不同权”方式上市,“同股不同权”股东为创始人兼CEO印奇以及两位联合创始人唐文斌、杨沐,三人占…

C++中set按降序排序

set一般插入元素时&#xff0c;默认使用关键字类型的< 运算符来比较两个关键字&#xff0c;故一般插入后为升序&#xff0c;举个例子&#xff1a; int main(int argc, char* argv[]) {set<int> s;s.insert(2);s.insert(1);s.insert(3);set<int>::iterator it …

matlab调用ansys-------1

1.版本&#xff1a;MATLAB R2014a ANSYS14.5 / MATLAB R2017a ANSYS17.0 2.思路&#xff1a;将MATLAB中的数据输出到shuju.txt中&#xff0c;用ANSYS读取shuju.txt后将计算计算结果输出到jieguo.txt中并将其返回到MATLAB中进行运算分析。 3.程序&#xff1a;在MATLAB中输入 …

python可以代替plc吗_PLC可以代替安全控制器吗?电气工程师告诉你

导读 国内的企业越来越重视设备的安全防护&#xff0c;可事故却频频发生&#xff0c;这是为什么呢&#xff1f;主要还是源自于大家对于安全防护知识上存在的诸多误区&#xff0c;比如很多人认为&#xff0c;稳定性高、性能强的PLC即可替代安全控制器的作用&#xff0c;其实这就…

php抽象 与接口

抽象方法和抽象类 PHP5支持抽象类和抽象方法。抽象类不能直接被实例化&#xff0c;你必须先继承该抽象类&#xff0c;然后再实例化子类。抽象类中 至少要包含一个抽象方法。如果类方法被声明为抽象的&#xff0c;那么其中就不能包括具体的功能实现。 继承一个抽象类的时候&…

C++ string转字符串

假设有一个string字符串&#xff0c;定义为string s "123"&#xff0c;则以下两种方法均可将其转换为char* s.c_str()s.data() 区别在于data除了返回字符串内容外&#xff0c;不附加结束符’\0’&#xff0c;而c_str()返回一个以‘\0’结尾的字符数组。 注意&…