Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应。

关于Python编程环境的配置,网上很容易搜索到。先默认你已经在windows上安装好了Python编译环境,并且在sublime text 2中已经安装好了必要的插件。下边我们就直接配置Python了,让Python代码能够在Sublime Text 2里欢快的跑起来。常见的配置主要是两种。

一、在Windows高级系统设置里设置好环境变量的系统变量如 path:c:\Python34。设置完系统环境变量后,运行cmd,输入python后回车,看是否有python的版本信息输入。如没有即为设置失败或者安装Python不成功。

二、启动Sublime Text 2,Preferences->Browse Packages 打开\Python\Python.sublime-build 文件,将里边的配置改为:

{
"cmd": ["python", "-u", "$file"],
"path": "D:/python34",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}

以上两种配置Python编译器路径的方案,只需要使用一种就行,如果安装的Python版本比较多,建议使用第二种方案,便于改动。设置好Python编译器路径之后,打开Sublime Text 2菜单Tools->Build System 选中Automatic或者Python。在Sublime Text 2中加载一个简单的Python脚本,或者Ctrl+N创建一个新文件,输入代码(这里是使用Python3.4版本,如果是2.7版本或者更老的,print 函数后不需括弧()):

print ("Hi, Sublime Text 2")

保存到非中文路径中,如果保存到了中文路径,会提示编译失败,一定要注意。Tools->Build或者Ctrl+B,执行编译。如果编译成功了,那你很幸运,如果编译不成功或者Ctrl+B后没有任何反应,也不要太失望。Ctrl+~查看下编译错误,如果有错误如下,就需要改一点代码了

File ".\sublime_plugin.py", line 337, in run_
File ".\exec.py", line 154, in run
File ".\exec.py", line 48, in __init__
UnicodeEncodeError: 'ascii' codec can't encode characters in position 13-16: ordinal not in range(128)

在Sublime Text 2配置文件目录(C:\%AppData%\Sublime Text 2\Packages\Default)下找到exec.py,然后找到第41-42行:

for k, v in proc_env.iteritems():
proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())

加上一个异常处理

       try:
for k, v in proc_env.iteritems():
proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
except UnicodeDecodeError:
print "Encoding error..."

网络上很多人问Sublime Text 2 Ctrl+B执行编译为什么没反应。基本上都是在以上步骤中被坑。1、Python编译器路径没配好;2、Build System中编译语言配置错误;3、脚本保存在了中文路径;4、Sublime Text 2中配置文件的编码错误。

Sublime Text 2下搭建Python环境常见错误的更多相关文章

  1. sublime Text 2 配置以及 Python环境搭建

    在搭建Python环境前,先设置好Sublime Text 2的环境. 一.Sublime Text 2配置: 1.离线安装: Perferences-->Browser Packages -- ...

  2. Windowns系统下搭建python环境

    本文介绍下在windows系统下安装python和python环境搭建. 安装PYTHON 首先,我们去python的官方网站下载python安装包.官网地址:https://www.python.o ...

  3. windows7下搭建python环境并用pip安装networkx

    1.安装顺序:Python+pip+pywin32+numpy+matplotlib+networkx 2.版本问题 所安装的所有程序和包都需要具有统一的python版本.系统版本和位宽,所以第一步要 ...

  4. MacOS下搭建python环境

    1. 安装须知 Mac OS自身其实已经带有Python,版本为2.7.X,这个Python主要用于支持系统文件和XCode,所以我们在安装新的Python版本时候最好不要影响这部分. 这里就会出现一 ...

  5. Sublime Text 3下C/C++开发环境搭建

    Sublime Text 3下C/C++开发环境搭建 之前在Linux Mint 17一周使用体验中简单介绍过Sublime Text. 1.Sublime Text 3安装 Ubuntu.Linux ...

  6. sublime text3 下搭建python IDE环境 --Anaconda插件篇

    近来在园区发现大家使用ST3(Sublime text 3)工具进行python学习.然后自己也跟风了一把. 1.ST3下载地址: http://www.sublimetext.com/3 2.安装S ...

  7. 翻译:打造基于Sublime Text 3的全能python开发环境

    原文地址:https://realpython.com/blog/python/setting-up-sublime-text-3-for-full-stack-python-development/ ...

  8. ubuntu14.04下搭建python+mysql环境

    简略记录ubuntu14.04下搭建python操作的mysql服务器的过程和其中遇到的问题及解决方法. 第一部分: 安装mysql 安装步骤:1. sudo apt-get install mysq ...

  9. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

随机推荐

  1. 详解C#中的反射

    反射(Reflection) 2008年01月02日 星期三 11:21 两个现实中的例子:1.B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内脏的生理情况.这是如何做到的呢?B超是B ...

  2. 用vue.js学习es6(三):数组、对象和函数的解构

    一.数组的解构: 以前的方式: var arr = [1,2,3]; console.log(arr[0]); //1 console.log(arr[1]); //2 现在的方式: var [a,b ...

  3. C++知识回顾(二)——名称空间

    随着工程的增大,名称相互冲突的肯能性增加,使用多个厂商的类库时,可能导致名称冲突.为了解决这些问题,需要用到名称空间. 为了将代码加入名称空间,可以使用namespae将其包含,例如,编写一段代码,其 ...

  4. jq封装淘宝图片轮播插件

    <!DOCTYPE html><head><meta http-equiv="Content-Type" content="text/htm ...

  5. Fragment中onActivityResult不响应

    开发中遇到Fragment中onActivityResult不响应的问题,曾经见过. 不少同学说处理方法是在与Fragment绑定的FragmentActivity中重写onActivityResul ...

  6. [转]ExtJs入门之filefield:文件上传的配置+结合Ajax完美实现文件上传的asp.net示例

    原文地址:http://www.stepday.com/topic/?459 作文一个ExtJs的入门汉子,学习起来的确是比较费劲的事情,不过如今在这样一个网络资源如此丰富的时代,依然不是那么难了的. ...

  7. UBER的故事

    今天分享一个很好的视频,19分钟,这个视频讲了过去几年一家伟大公司的成长的思路,这个演讲的PPT很棒,演讲者的语速.语调.表情等也非常适合大家在日常工作中学习.   链接:http://v.youku ...

  8. Matlab中^2和.^2的区别

    矩阵a a^2 --  两个矩阵相乘 a.^2  --  表示 矩阵对应位置相乘 如下: a=[ 1,2,3 4,5,6 7,8,9]; disp(a); disp(a^2); disp(a.^2); ...

  9. C++中new,delete和new[] ,delete[]的分析

    转载在这里 http://www.cnblogs.com/hazir/p/new_and_delete.html

  10. zlib-1.2.7/libpng-1.5.9 instead of zlib-1.2.8/libpng-1.6.6

    The reason for the failure apparently appears to be version incompatibility, partly may be due to li ...