免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: sandheart
打印 上一主题 下一主题

python为什么要用缩进来标示语句块呢? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2007-10-28 18:02 |只看该作者
原帖由 book11 于 2007-8-17 08:51 发表
不可否认,python的代码一旦缩进乱了,是无法重新格式化的。

说的太对了,确实让问头疼!

论坛徽章:
0
22 [报告]
发表于 2007-11-01 16:02 |只看该作者
原帖由 Zandy 于 2007-10-28 18:02 发表

说的太对了,确实让问头疼!

我也试过一次,从网上找到一段代码例子,但是这段代码的缩进完全被删掉。我只得一行一行的分析代码的逻辑,重新输入缩进,搞了大半天才让代码运行起来。

求职 : 数据库管理员
论坛徽章:
0
23 [报告]
发表于 2007-11-13 17:00 |只看该作者
原帖由 is03wush 于 2007-11-1 16:02 发表

我也试过一次,从网上找到一段代码例子,但是这段代码的缩进完全被删掉。我只得一行一行的分析代码的逻辑,重新输入缩进,搞了大半天才让代码运行起来。


運行起來了,
後來卻發現邏輯分析錯誤.那才叫頭痛.

论坛徽章:
0
24 [报告]
发表于 2007-11-14 13:29 |只看该作者
PYTHON的缩进显然是违背了UNIX世界的设计方式。
详情可以参考TAOUP一书。

首先缩进是一种不可见字符,肉眼不容易区分。连Makefile那样单级缩进的设计,都被人们一直诟病。更别说PYTHON的多级缩进了

再次UNIX推崇基于文本的解决方案,而缩进的语法是强烈的反文本的,必须借助工具的支持。
如果不介意,我建议PYTHON可以使用专用编辑器,代码改成二进制格式,这样借助专用工具可以轻易解决复制粘贴的问题,缩进被删掉的问题也好解决了,为各浏览器分别开发插件,贴PYTHON代码就和贴图一样处理。

论坛徽章:
0
25 [报告]
发表于 2007-11-16 15:32 |只看该作者
哎,希望高手能改装成支持{}缩进式的~~~呵呵

良好的编程习惯是养成的!

嗯,一下子还真的适应不来~~哎~~

[ 本帖最后由 suxiangkun 于 2007-11-16 15:36 编辑 ]

论坛徽章:
0
26 [报告]
发表于 2007-11-17 10:39 |只看该作者
原帖由 oyd_admin 于 2007-11-14 13:29 发表
PYTHON的缩进显然是违背了UNIX世界的设计方式。
详情可以参考TAOUP一书。

首先缩进是一种不可见字符,肉眼不容易区分。连Makefile那样单级缩进的设计,都被人们一直诟病。更别说PYTHON的多级缩进了

再次 ...


Py违反Unix思想的说法,我是不敢苟同的。

The Art of Unix Programming 所说的面向文本,是指程序的输入输出应该有一个统一的接口,这样程序就能通过管道,以及各种文本处理工具,与其他人写的程序协作了。与两进制的输入输出相比,这种设计的好处,一是不限制程序的用途,换句话说,允许用户以出乎设计师预料的方式使用程序;第二就是能发展出标准化的工具,比如grep, awk, sed之类的文本处理工具。

很明显,Python的这个设计并不与上述原则相违背。

其实真正的症结在于,很多网站,很多编辑器不支持Python。
tvb 该用户已被删除
27 [报告]
发表于 2007-11-17 22:05 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
28 [报告]
发表于 2013-08-08 04:36 |只看该作者
我有点明白了,“遇到层次比当前缩近高的就自然结束” 就把东西整清楚了!

不过我测试后得出结论:
1. 缩进相同的连续行就是相同的代码块了!(四个空格和一个tab不是相同的缩进),
2. 缩进空格或tab多出上级就是子代码块了,
3. 所以”缩进“在python里面就是“新代码块起始的意思了”。
5. 整明白了,可以上路了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP