python是一种对缩进有严格要求的语言, Python脚本可以使用非常多的工具进行编写,笔者在Linux系统使用JEdit进行Python脚本编写,由于在Linux编写脚本比较痛苦,比如想一眼看出相同的变量在哪个地方使用就非常不方便,所以想转到Window系统上进行编写,在Windows上有一个非常轻量级的脚本编写工具:Note Pad++, 还有一个Eclipse上的插件pydev。

但是直接将linux上的Python脚本直接移到window上编写时出现了大量的缩进问题,因为Linux和window上对待tab是不同的方式,有的是看做是一个space有的看作是几个space,非常的麻烦。

如何解决呢?

方法就是各个工具都有一个功能叫是否将tab看做space的功能,只要在linux上的JEdit编写工具中进行统一处理,如

JEdit统一调整缩进的方式是:Edit - Indent - Spaces to Tabs 或 Tabs to Spaces  这里可以选择Tabs to Spaces,

调整后,放到windows打开,此时就会发现,缩进的格式就统一了。

反之,在Pydev 上也有这样的统一调整缩进的方式:Source - Convert space-tabs to tabs 或 Convert tabs to space-tabs

而NotePad ++ 上也有这样的统一调整缩进的方式:Edit - Blank Operations - Tab to Space 或 Space to Tab (All) 或 Space to Tab (leading)

下面附带介绍 :Eclipse + pydev:

依靠强大的eclipse,pydev显得格外耀眼。强大的调试功能和舒服的编辑环境让pydev赢得了许多人的青睐。不过eclipse本来就是耗资源大户,pydev在这一点上毫无办法,但现在的电脑都很快了,跑eclipse根本就是小case,不用担心太多。除了强大的调试功能,依靠eclipse,pydev的代码浏览能力是其它所有IDE所不能比的,比如按住CTRL键再点击一个类就能自动跳到该类的定义,这对于阅读代码非常有用。现在pydev extension也开源了,所以一些(我不知道的)高级的功能也被融入到pydev里了。推荐度★★★★★
下载:http://pydev.org/download.html
注意pydev可以在eclipse里在线安装,请阅读上面那个网页的右边的Quick Install.

如何解决Python脚本在Linux和Windows上的格式问题的更多相关文章

  1. python脚本在linux下的执行

    假设现有一篇待执行的python脚本test.py python脚本在linux下面执行有两种方式: 打开Linux终端,输入 python test.py 在test.py脚本第一行添加声明 #!/ ...

  2. Linux和Windows上实现的异同-Linux的自适应ACK

    上周有同事问,延迟ACK到底对应用层会产生什么后果,我也不知道该如何作答,于是丢了一个链接: TCP之Delay ACK在Linux和Windows上实现的异同-Linux的自适应ACK: 是的,这是 ...

  3. window下编写python脚本在linux下运行出错 usr/bin/python^M: bad interpreter: No such file or directory

    今天在windows下使用notepad++写了个python脚本,传到linux服务器执行后提示:-bash: ./logger.py: usr/bin/python^M: bad interpre ...

  4. Python脚本破解Linux口令(crypt模块)

    环境 Kali Linux ,python版本2.7.13 . 我们利用Linux系统中的 crypt 模块模拟了Linux系统中用户密码的加密,在Windows中是不存在这个库的. 在Linux系统 ...

  5. Python输出内容的三种方式:print输出 python脚本执行 linux直接执行

    1.  在linux中安装python后,在linux命令行中输入python即可切换到Python命令行下 退出python命令行的命令: 老版本:ctrl+D 新版本:quit();或exit() ...

  6. python+unittet在linux与windows使用的区别

    使用python的unittest编写单元测试框架,批量运行测试用例时,如果使用discover时,windows环境下和linux环境下的代码不一样 Windows环境的run.py代码: case ...

  7. 解决Activiti5.22流程图部署在Windows上正常,但在linux上部署后出现中文变方块的问题

    总结/朱季谦 楼主最近在做公司的工作流平台,发现一个很无语的事情,Activiti5.22的流程图在Windows环境上部署,是可以正常查看的,但发布到公司的Linux服务器上后,在上面进行流程图在线 ...

  8. Python脚本实现Linux/MAC中Xmind Zen去水印等其他功能的过程(V0.1)

    说明本脚本仅作为学习使用,请勿用于任何商业用途.本文为原创,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明.功能简介 去除软件右上角激活按钮 去除导出时激活弹窗 去除导出PDF文 ...

  9. Python脚本:Linux自动化执行Python脚本

    1.环境及其工具: ubuntu 16.04 python2.7(自带) pip2.7(安装) virtualenv(安装) crontab (自带) 2.pip2.7安装 (1)尝试使用 sudo ...

随机推荐

  1. LibLinear(SVM包)使用说明之(二)MATLAB接口

    LibLinear(SVM包)使用说明之(二)MATLAB接口 LibLinear(SVM包)使用说明之(二)MATLAB接口 zouxy09@qq.com http://blog.csdn.net/ ...

  2. Fckeditor漏洞利用总结

    查看编辑器版本FCKeditor/_whatsnew.html——————————————————————————————————————————————————————— —————— 2. Ver ...

  3. UVALive - 3401 Colored Cubes

    好久没写解题回顾了.主要是没什么时间,但是还是一直在刷题,图论刷了70%的知识点,不过感觉长进不是很大,所以觉得还是得一步步来,最近还是先从刘汝佳大白书把前面基础章节刷完然后再决定以后的训练方式吧. ...

  4. sql 复杂自动编号错误批量修改方案

    [一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/p/5133953.html]  前提:自动编号为18位,前4位是年份,中间10位是XXXX,最后四位 ...

  5. ASP.NET MVC 入门1、简介

    什么是MVC模式 MVC(Model-View-Controller,模型-视图-控制器模式)用于表示一种软件架构模式.它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Co ...

  6. thinkphp 模板替换

    具体详见tp手册. 如果需要修改模板替换映射路径. 则需: 'TMPL_PARSE_STRING'=>array( '__PUBLIC__'=>__ROOT__.'/'.APP_NAME. ...

  7. USB (Universal Serial Bus)

    USB歷史簡介 USB規格演變 標準 USB 2.0 介面 實體層 訊號傳輸 傳輸速率 網路層 USB 通訊模型 Endpoints 傳輸型態 USB 資料連結 Transaction Frame P ...

  8. Android 图片从网页中获取并动态加载到listview中

    实现功能: 效果图: 代码:这里

  9. 为什么要重写equals()方法与hashCode()方法

    在java中,所有的对象都是继承于Object类.Ojbect类中有两个方法equals.hashCode,这两个方法都是用来比较两个对象是否相等的. 在未重写equals方法我们是继承了object ...

  10. 【HDOJ】1203 I NEED A OFFER!

    DP问题. #include <stdio.h> #define MAXNUM 10002 int main() { int m, n; int cost[MAXNUM]; // the ...