当我进行Python编程时,我总是使用制表符进行缩进。 但后来我在SO上遇到了一个问题,有人指出大多数Python程序员使用空格而不是制表符来最小化编辑器到编辑器的错误。

这有什么不同? 还有其他原因可以使用空格而不是Python的制表符吗? 或者这不是真的吗?

我应该切换我的编辑器来插入空格而不是立即插入标签或继续像以前那样继续前进吗?

#1楼

因为PEP-8告诉我们使用空格。

#2楼

我最近发现了一篇题为“ Python:关于缩进的神话 ”的文章,讨论了这个问题和相关问题。 这篇文章有充分的理由在编写Python代码时建议使用空格,但肯定存在分歧的余地。

我相信大多数Python程序员都只使用空格。

#3楼

最“pythonic”的方法是每个缩进级别使用4个空格。 然而,Python解释器将识别空格或制表符。 唯一的问题是你必须永远不要混合空格和标签 ,选择其中一个。 也就是说,规范建议使用空格,大多数开发人员都使用空格,所以除非你有充分的理由不这样做,否则我会说空格。

#4楼

当您在文件中混合缩进时,会发生编辑器到编辑器错误。 这产生如下:一个代码块用4个空格缩进,然后一个缩进级别“in”,它用缩进键缩进。 现在做这个的异教徒(混合标签和空格)有它所以他的标签也是4个空格,所以他没有看到任何问题,Python没有看到任何问题。

现在我们的受害者来了,他的标签设置为8个空格。 现在,我们的受害者认为代码看起来全部被破坏,并通过删除一级缩进来 修复它 ,现在使代码看起来仍然是2级缩进,但实际上是一个级别 。 在这一点上,所有的地狱都破裂了。

这里的教训是,你永远不应该混合标签和空格。 如果您坚持这一点,那么无论您个人使用哪种代码,都可以轻松地将代码重新插入空格或制表符。 确保不混合制表符和空格的最佳方法是始终使用-tt运行python ,这会在制表符和空格混合时产生错误。

对于制表符和空格,我个人使用制表符,使其与外观分开缩进 - 当使用制表符缩进代码时,更改代码的外观要比使用空格更容易。 我知道这与99%的Python程序员所做的相反,但这是我个人的偏好,并且在任何情况下很容易将选项卡式文件转换为间隔文件。 反过来并不总是正确的,因为你可能会意外地敲掉字符串中的4个空格等。

#5楼

你可以混合标签和空格......但是一个标签被认为是与8个空格相同的缩进,所以除非你的编辑器被设置为将标签视为8个空格,否则混合它们时会遇到麻烦。

制表符和空格 python_Python编程中的制表符与空格相关推荐

  1. HTML中的5种空格表示,HTML中的5种空格各表示的意义

    HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格( )是常规空格的宽度,可运行于所有主流浏览器.其他几种空格(       ‌‍)在不同浏览器中宽度各异. 它叫不 ...

  2. 如果去掉数学前后的空格_excel表格数据消除前后空格-EXCEL表格中数据后面的空格怎么去掉,一条条手工删......

    excel表格中,单元格的内容后面总是有一个空格,怎... 准备工具/材料:windows10电脑,excel软件. 单元格的内容后面去除空格的方法如下: 1.首先,打开需要设置的excel文件. 2 ...

  3. php编程用空格,shell 编程中空格的使用方法

    1.定义变量时, =号的两边不可以留空格.eg: gender=femal----right gender =femal---–wrong gender= femal---–wrong 2.条件测试语 ...

  4. C语言中前面有四个空格,在C语言编程中什么叫前导空格,什么叫尾随空 – 手机爱问...

    在c语言中,何为条件运算符!具体 计算机具有逻辑判断能力,其判断的依据是计算机内部进行逻辑运算的结果.C语言提供了关系运算和逻辑运算,用来构造C程序控制中的条件,实现程序的选择结构和循环结构控制. 关 ...

  5. python字符串补空格输出_Python去除空格,Python中常见字符串去除空格的方法总结...

    今天小编就为大家分享一篇关于Python去除字符串前后空格的几种方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧: Python去除空格方法一: stri ...

  6. c++制表符_在Linux命令行中将制表符(tab)转换为空格

    请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本教程将从编程的角度向您介绍如何在Linux命令行中将 ...

  7. c# 字符串中多个连续空格转为一个空格

    #region 字符串中多个连续空格转为一个空格 /// <summary> /// 字符串中多个连续空格转为一个空格 /// </summary> /// <param ...

  8. 统计数字,空白符,制表符_为什么您应该在HTML中使用制表符空间而不是多个非空白空间(nbsp)...

    统计数字,空白符,制表符 There are a number of ways to insert spaces in HTML. The easiest way is by simply addin ...

  9. python中横向制表符_python中制表符是什么意思

    Python中的制表符是什么? 制表符,也属于"写法是两个字符的组合,但含义上只是一个字符"的情形.它的写法是反斜杠和t字母的组合,即"\t",t取的是tabl ...

最新文章

  1. HDU-1285 确定比赛名次 拓扑排序
  2. js改变iframe链接
  3. vs2019c语言头文件的路径,vs2019设置及第三方库的使用,
  4. Python可视化中Matplotlib绘图(2.设置范围、标签、标题、图例(详细参数))
  5. Service Broadcast简单音乐播放功能
  6. gaussian09使用教程linux,Gaussian-09-GaussView5.0使用教程.ppt
  7. MMKV_mmkv之基本介绍
  8. 英语不好,也能让你看懂man手册
  9. 【校招VIP】考研二战长时间没工作,面试被问为什么有职场空窗期?你应该这样回答
  10. Mybatis Plus
  11. 送给计算机老师平安夜贺卡,给老师的平安夜祝福语
  12. BUUCTF MISC入门
  13. SMAP土壤湿度数据的下载与hdf-tif转格式
  14. java图片变成黑白代码_转:Java对图片的处理---缩放图像、图像切割、图像类型转换、彩色转为黑白...
  15. Cisco交换机 ——STP
  16. php程序检测不到vc9,XAMPP2016中文精简版启动失败 缺少运行库解决办法
  17. 【cojs1487】麻球繁衍
  18. Maven项目+MVC三层架构+Mysql+Tomcat+私教预约系统前后端(私教、用户、管理员)+可以用于学习SSM框架、javaweb、maven项目入门
  19. tankgame网络版开发
  20. 手机热点中的AP频段2.4GHz和5.0GHz有什么区别?

热门文章

  1. 【图文解析】反转一个单链表
  2. [转]HessianPHP 中文支持,中文乱码问题解决
  3. 变量邻域下降法(Variable Neighborhood Descent, VND)
  4. 数据分析,化解2017年焦虑的最后一课
  5. 啰里啰嗦学IOS CoreDate入门
  6. BBVA利用区块链向保时捷控股提供1.5亿欧元贷款
  7. 没有焦虑和恐惧的人,难成大事
  8. Movavi Video Converter,一款来自国外的格式转换神器。
  9. 一个大胆的猜想:如果GitHub的数据库用的是OceanBase
  10. MATLAB robotics tools工具箱下载安装