--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
我的习惯是永远用4个空格, 可以看看 PEP8 和 idiomatic python
2011/11/7 aking <kang...@gmail.com>:
这个,能讲讲具体例子么?一个机器上能运行的话,没理由另外一台机器缩进就不对了吧。
另外,不用tab字符,tab一律转换成空格,一般可以少很多问题。
你先要知道困扰是怎么产生的,然后才能知道理由。如果这个困扰是你的编辑器产生的,那么责备 python 的理由何在呢?只能说明设计
python 的人要求编程人员必须有一个靠谱的编辑器而已。
目前能发现的问题无非就下面两种:
1。混用 空格跟 tab。
2。粘贴别人代码之前没有关闭自动缩进(话说某些编辑器在粘贴的时候能够自动关闭自动缩进的)。
但是话说乱拷贝别人代码跟混用空格 tab 本来就是很糟糕的习惯。
应该是你机器上用了一种缩进 然后到了别的平台又用了别的缩进策略来编辑过吧?
这个事情怪只怪你不用 vim/emacs 而去用 其他编辑器 :D
On Mon, Nov 07, 2011 at 09:53:32AM +0800, aking wrote:
> 噢我忘记说了
> 另外一台机器上用的是pythonwin,
> 难道python可以跨平台就是不能跨IDE?
>
>
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
这样不小心混用 tab 和 space 时 Python 会报错的。Python 总是认为 1 tab
= 8 spaces。
> 在 2011-11-7,上午9:32, aking 写道:
>
> > 今天被这个代码缩进搞得很郁闷,
> > 我一台机器上用KOMODO写的代码,到另一台机器上运行的时候莫名其妙出错了,一调试才发现是代码缩进的问题,真是火大。
> > 看到一个兄弟的博客也是被代码缩进的问题给耍了
> > 我就纳闷了,就不能用{} begin end之类的来分割代码块么?
> > 有谁知道历史渊源的给讲讲故事哈,安慰下偶们受伤的心灵。
> > 附这个苦命阶级兄弟的博文
> > python一句代码干掉你三天良性睡眠(关于代码缩进)
> > http://www.4ucode.com/Study/Topic/1509755
--
Best regards,
lilydjwg
Linux Vim Python 我的博客
http://lilydjwg.is-programmer.com/
python使用空格或者TAB来划分代码块,虽然写代码的时候方便了,但是造成代码块界限不明显很容易由于失误造成逻辑错误
而且很难检查出来,比如下面的例子python code1 python code2,再假如这样一个情景:某苦逼程序员深夜加班写下了代码
python code1,然后睡意朦胧中多敲了几个空格,结果变成了python code2,好像下面这样几条语句拿出来示众当然是容易发
现错误在哪里,可是如果是几十几百行代码,且深层嵌套的代码里呢像python code3一样,说实话,我小于60的智商一看到这样的
代码头就晕了。
python code1
if xxx:
do111
do222
python code2
if xxx:
do111
do222
python code3
if xx11:
do111
if x222:
if x333:
xxxx
xxxx
。。。。。。。
再次附上url并加全文
python一句代码干掉你三天良性睡眠(关于代码缩进)
http://www.4ucode.com/Study/Topic/1509755
python一句代码干掉你三天良性睡眠(关于代码缩进)
需求:一个大学里提供一门课程,让学生参加资格考试,考完之后,学校想知道自己学生在考试时的表现,如果通过率高,就增加学费。现在,要求写一个程序,对考试结果进行总结。这里假设有10个学生,1表示该学生通过了考试,2表示没有通过。
1.输入每个考试结果(1或2)。每次请求另一个考试结果时,都在屏幕上显示消息:“Enter result”。
2.统计两类考试结果的数量(1的数量和2的数量)。
3.显示考试结果总结,分别指出通过和没有通过考试的学生的人数。
4.假如有8名以上的学生通过考试,便打印一条消息 “Raise tuition”(增加学费)。
×××××××××
1.程序必须处理10个考试结果,所以需要一个计数器控制的循环。
2.每个考试结果都是1个数字,除了1就是2.假如数字不是1,就假设它是2.
3.要使用两个计数器:一个统计通过考试的学生数量,另一个统计没有通过的数量。
4.程序处理完所有结果后,必须判断是否有8名以上的学生通过了考试。有的话这个学校要提高学费了。
×××××××××
passes=0
failures=0
studentCounter=1
while passes < = 10:
result=raw_input("Enter result:")
result=int(result)
if result ==1:
passes=passes+1
else:
failures=failures+1
studentCounter=studentCounter+1 #这句是重点
print passes
print failures
if passes >8:
print "add"
以上就是实现代码,不过在python下面需要注意地一点是,一定要注意缩进,没有一个语言要求那么严格的,python例外。而且丫还死不报错。就看你逻辑错误。。哎,我今天可以睡个好觉了。
于2011年11月07日 星期一 18时12分11秒,aking写到:
- 嘿嘿嘿!这正是俺爱死 Py 的重要原因之一:
- 这货内置的精神追求就是
- 不得写出难以看懂的代码!
- 既然使用缩进,没有其它神马多余的语法结构标识,所以:
- 你应该使用靠谱的编辑来辅助管理你不好的缩进习惯
- 你无法维护超过50行,多过2层的逻辑
- 你无法忍受其它人乱来的缩进方式
那么这也意味着:
+ 你忽然开始享受人类最优雅和NB的编辑器了
+ 你的所有函式都2于50行,简洁明了
+ 你所在的团队有稳定统一的代码规约了,你看任何人的代码都没有反胃的感觉了
等等
一切都是只准用缩进来标识代码块引发的...
非常非常敬佩 Guido 老爹当年怎么发现这招儿的...
> python code1
> if xxx:
> do111
> do222
>
> python code2
> if xxx:
> do111
> do222
>
> python code3
> if xx11:
> do111
> if x222:
> if x333:
> xxxx
> xxxx
> 。。。。。。。
>
>
>
>
> 再次附上url并加全文
> python一句代码干掉你三天良性睡眠(关于代码缩进)
> http://www.4ucode.com/Study/Topic/1509755
--
人生苦短, Pythonic! 冗余不做,日子甭过!备份不做,十恶不赦!
俺: http://about.me/zoom.quiet
文字协议: http://creativecommons.org/licenses/by-sa/2.5/cn/
我感觉你的抱怨没有意义。给我的感觉就像在抱怨为啥C语言一定要一对一对的括号对好,一旦少了个括号就出错一样。
人家语法就是这样定义的。
你的代码只用一个或两个空格那是不好注意缩进。一般来说都是用4个空格的。
代码写出了一堆if的时候,你就应该抽成独立的函数了,而不是全写在一起。就算用C,你写个7,8层if放在一起,也是不可读的。
无论你在用什么语言,只要你开始把其它语言的习惯往上套,都是别扭的,都在给自己找麻烦。
如果你真的想用python,为什么不去习惯它呢?或者你自己fork一个缩进无所谓的python版本出来?
--
Best Regards,
Leo Jay
不管你喜欢不喜欢,python已经这样了,并且已经过了有10几年了,估计不会再有变化了。所以再讨论好不好没太大意义,除非你有能力把它改掉,不然白白浪费时间。
--
I like python!
UliPad <<The Python Editor>>: http://code.google.com/p/ulipad/
UliWeb <<simple web framework>>: http://code.google.com/p/uliweb/
My Blog: http://hi.baidu.com/limodou
你要是实在不习惯,用这个笑话里面的方法吧。。(各位大虾不要向我扔砖块。>_<)
def voom(spam,eggs):
if condition: #{
do_something
#}
这样。。或者if xxx: #then 再#end if也行。。。随你便了。。
当初我开始注意到python就是因为它居然把缩进当成语法的一部分。你再也不会看到同一个代码片段前几行缩进3个空格,后几行缩进10个空格的乱七八糟的代码了。
不知道你信不信,我见过一段C++代码,在visual studio里,我一看,一屏的空白。我还在想呢,谁没事空这么多行啊。
当我鼠标在空白上一框我才发现,这段代码缩进了100多个空格,代码在屏幕右边。。。
每个语言都有自己的独特的地方。有的你喜欢,有的你不喜欢。选自己喜欢的用就是了。
我当初也看过lua和ruby,感觉lua标准库太少,ruby到处都是 | 和 =>看上去跟perl一样,我都不喜欢。所以一直用python。
缩进对我来说从来都不是问题,我无论什么语言,一律4个空格做缩进。
这个似乎是从 ABC 语言继承下来的。
>
> > python code1
> > if xxx:
> > do111
> > do222
> >
> > python code2
> > if xxx:
> > do111
> > do222
> >
> > python code3
> > if xx11:
> > do111
> > if x222:
> > if x333:
> > xxxx
> > xxxx
> > 。。。。。。。
> >
> >
> >
> >
> > 再次附上url并加全文
> > python一句代码干掉你三天良性睡眠(关于代码缩进)
> > http://www.4ucode.com/Study/Topic/1509755
>
--
你的 C 语言习惯我很赞同,但是 Python 不是 C。Python 的缩进不对会造成逻辑
错误,C 语言的花括号放错位置不也一样会造成错误吗?我见过这种 C 代码:
if(xxx);
{
yyy;
}
以及这种:
x == func();
这些都是语言的特性而已。如果你不喜欢,那你可以用别的自己喜欢的语言啊。至
于”睡意朦胧“中多敲了几个空格,实际上在睡意朦胧的时候使用任何编程语言都会
出错的。
至于深层嵌套,你不觉得不爽吗?既然不爽,当然应该避免了。
我还见过这样的C++代码:
if (...) {
foo(); // why??????????/
return xxx;
}
return yyy;
结果由于trigraph的原因,那个return xxx;被注释掉了。
在foo()执行完之后居然会去执行return yyy
当年的编译器一般都不对这种trigraph出warning。恰好满足if条件的概率又小,当时,那好一通debug啊。
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
ulipad的话是可以显示空白的,一看就清楚了。关键是不要混用。
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
另外,Tab与空格的问题实在不值得抱怨:
* 在源代码中混用Tab与空格缩进是绝对不值得提倡的,用你的话说,不能“跨IDE”啊……如果别人的TAB设定不一样,看到的代码缩进就是一团糟。。Python的语法一定程度上避免了这种情况,是好事啊。
* 缩进既然作为语法的一部分,学Python时是应该有所了解的。。而且统一缩进四个空格这件事好像也挺多地方强调的。
* 当然,从楼主的经历看,不幸被TAB问题困扰也是难免的。但也应注意到该问题对每个个体来讲其实是“一劳永逸”的,遇到一次这个问题,以后有所注意,就不会再被其所困扰了……
再者,其实心理上的因素也很重要,一般来讲如果非常习惯了某种语法,就不太容易接受不同的语法。。比如我以前对Pascal比较熟,就觉得C式的语法很混乱,比如用丑陋的{}而不用begin
end,赋值居然不用:=强调一下之类…… 不过时间久了习惯了其实也都一样的……
总之,个人感觉抱怨一个语言的语法其实意义真的不大,除非想设计一种更好的语言……不过这应该需要很多很多积累了吧……
当然,如果特别想写end,ruby吧!
CHEN, Xing / 陈醒
2011/11/6 aking <kang...@gmail.com>:
> 今天被这个代码缩进搞得很郁闷,
> 我一台机器上用KOMODO写的代码,到另一台机器上运行的时候莫名其妙出错了,一调试才发现是代码缩进的问题,真是火大。
> 看到一个兄弟的博客也是被代码缩进的问题给耍了
> 我就纳闷了,就不能用{} begin end之类的来分割代码块么?
> 有谁知道历史渊源的给讲讲故事哈,安慰下偶们受伤的心灵。
> 附这个苦命阶级兄弟的博文
> python一句代码干掉你三天良性睡眠(关于代码缩进)
> http://www.4ucode.com/Study/Topic/1509755
>
两个方面。
如果你会被python的缩进搞混逻辑,那c的无括号语法也会。难道你再发一篇去讲c的无括号语法的存在,if内允许赋值这些特性多么不合理么?
搞混逻辑的根本原因,是你不熟悉缩进逻辑控制语法。在一眼扫过代码的时候,你下意识的按照括号封闭去解释了语义,或者不能解释语义。那当然痛苦。让python程序员去看恶意对齐的c代码也会有同样问题。
至于空格和tab的问题,属于强制格式控制语法的副作用。如果对缩进不敏感,当然不会有这个问题。因为这个理由需要对编辑器作出限制,说他坑爹是有道理的。
From P81HD
诸位python给我造成的不便是一个方面
另外一个方面就是我邮件里提到的那篇博文里说的情况,因为代码缩进的问题,一不小心造成逻辑错误,而且还很难检查出来,
这个从工程方面来讲是一个很不好的特点,像我平时使用if语句都是喜欢像下面这样的,哪怕是if里只有一条语句我都会这样
因为这样语义明确,我自己看也好,别人看也好,都一眼能够明白
if(xxx)
{
dodo;
}
python使用空格或者TAB来划分代码块,虽然写代码的时候方便了,但是造成代码块界限不明显很容易由于失误造成逻辑错误
而且很难检查出来,比如下面的例子python code1 python code2,再假如这样一个情景:某苦逼程序员深夜加班写下了代码
python code1,然后睡意朦胧中多敲了几个空格,结果变成了python code2,好像下面这样几条语句拿出来示众当然是容易发
现错误在哪里,可是如果是几十几百行代码,且深层嵌套的代码里呢像python code3一样,说实话,我小于60的智商一看到这样的
代码头就晕了。
在 C 里面你一样可以写出下面的代码:
if (xxx)
do111;
do222;
而且也一样不会报错。
如果你只是需要强制报错的话,可以使用 pass。
if xxx:
do111
pass
do222
这个代码不会报错。
if xxx:
do111
pass
do222
这个代码会报错,因为 pass 被认为是结束符,后面如果再接同级缩进的代码视为语法错。
所以,你可以把 pass 当做 end,只是 python 认为它可有可无而已。
--
果然,Vim 会自动处理。
首先看是什么模板系统,再说不行就在调用前先进行转换。
2011/11/8 puras <he...@neusoft.com>:使用string中的Template 现在传进去的值有一个变量名为pojo, 但是这个pojo,在模板里,有的地方需要首字母大写, 不知道在Template中,如何能调用方法在需要的地方换成首字母大写。 用capitalize方法,没有执行。 谢谢!首先看是什么模板系统,再说不行就在调用前先进行转换。
嗯,这里只做变量替换,不做其它操作。你还是把这个分成两个变量吧。
> --
> Best regards,
> lilydjwg
>
> Linux Vim Python 我的博客
> http://lilydjwg.is-programmer.com/
>
python自带的是不能做复杂的计算的,它好象只有一些基本的处理。具体的还是看下文档吧。
Python 里哪条语句不语义明确了?只不过解读的方式不一样而已。C 只认 {},而
Python 要求你好好缩进。仅此而已。
2011/11/8 puras <he...@neusoft.com>:用的是Python默认的 from string import Template ct = Template(""" private ${pojo} ${pojo}; """) 想生成 private User user; 可现在只能生成 private user user;python自带的是不能做复杂的计算的,它好象只有一些基本的处理。具体的还是看下文档吧。
python里空格就是用来划分语义块的。跟C的花括号一个意思。
C里面你花括号多一个少一个都不行。python也是,空格应该几个就几个,多一个少一个也不行。
> 虽然有各种方法来规避python的这个缺点,但也正是这些方法的存在强烈的证明了python的不足,
> 至于你说的pass的方法已经有兄弟测试过了我就不多说了。
2011/11/8 puras <he...@neusoft.com>:谢谢! 顺便问下,别的模板,有能实现我想要的效果的么?http://www.makotemplates.org/ 想干啥都行。
记得django 的有个fillter 的东西...没太用过,不清楚行不行,给一个思路了.
Sent from my mobile device
--
跟计算机打交道的语言语法都是严谨的,语义都是明确的……但上面C的这个例子容易导致幻觉,所以多数style
guide都要求if后面一律添加大括号。。Python中缩进做为语法的一部分,如果你觉得不明确,应该是还不够熟悉的原因,或者说对
{}式的机制太熟悉了……
换个角度说,格式好的C/C++等的程序,代码块是要服从缩进的,从而{}实际上并没有必要存在……于是Python这种语言直接就把{}省去了,代码清晰明了。
或者说,{}语法允许了混乱格式的存在,在给开发者更大的自由度同时,也引入了不少陷阱。这是C/Perl这类语言的风格吧。Python的理念应该是不同的,从语法的角度统一了很多东西,符合语法的正确的程序相比之下没有太大自由度,但在语法上的陷阱少一些。
> 虽然有各种方法来规避python的这个缺点,但也正是这些方法的存在强烈的证明了python的不足,
举例?
> 至于你说的pass的方法已经有兄弟测试过了我就不多说了。
pass是空语句吧,有点像";",跟这个讨论似乎木有关系?
CHEN, Xing / 陈醒
On 11月7日, 下午6时21分, "Zoom.Quiet" <zoom.qu...@gmail.com> wrote:
> 在 2011年11月7日 下午6:10,aking <kangxi...@gmail.com> 写道:
>
> > 诸位python给我造成的不便是一个方面
> > 另外一个方面就是我邮件里提到的那篇博文里说的情况,因为代码缩进的问题,一不小心造成逻辑错误,而且还很难检查出来,
> > 这个从工程方面来讲是一个很不好的特点,像我平时使用if语句都是喜欢像下面这样的,哪怕是if里只有一条语句我都会这样
> > 因为这样语义明确,我自己看也好,别人看也好,都一眼能够明白
> > if(xxx)
> > {
> > dodo;
> > }
>
> > python使用空格或者TAB来划分代码块,虽然写代码的时候方便了,但是造成代码块界限不明显很容易由于失误造成逻辑错误
> > 而且很难检查出来,比如下面的例子python code1 python code2,再假如这样一个情景:某苦逼程序员深夜加班写下了代码
> > python code1,然后睡意朦胧中多敲了几个空格,结果变成了python code2,好像下面这样几条语句拿出来示众当然是容易发
> > 现错误在哪里,可是如果是几十几百行代码,且深层嵌套的代码里呢像python code3一样,说实话,我小于60的智商一看到这样的
> > 代码头就晕了。
>
> - 嘿嘿嘿!这正是俺爱死 Py 的重要原因之一:
> - 这货内置的精神追求就是
> - 不得写出难以看懂的代码!
> - 既然使用缩进,没有其它神马多余的语法结构标识,所以:
> - 你应该使用靠谱的编辑来辅助管理你不好的缩进习惯
> - 你无法维护超过50行,多过2层的逻辑
> - 你无法忍受其它人乱来的缩进方式
> 那么这也意味着:
> + 你忽然开始享受人类最优雅和NB的编辑器了
> + 你的所有函式都2于50行,简洁明了
> + 你所在的团队有稳定统一的代码规约了,你看任何人的代码都没有反胃的感觉了
> 等等
> 一切都是只准用缩进来标识代码块引发的...
> 非常非常敬佩 Guido 老爹当年怎么发现这招儿的...
>
>
>
>
>
>
>
>
>
> > python code1
> > if xxx:
> > do111
> > do222
>
> > python code2
> > if xxx:
> > do111
> > do222
>
> > python code3
> > if xx11:
> > do111
> > if x222:
> > if x333:
> > xxxx
> > xxxx
> > 。。。。。。。
>
> > 再次附上url并加全文
> > python一句代码干掉你三天良性睡眠(关于代码缩进)
> >http://www.4ucode.com/Study/Topic/1509755
>
> --
> 人生苦短, Pythonic! 冗余不做,日子甭过!备份不做,十恶不赦!
> 俺:http://about.me/zoom.quiet
> 文字协议:http://creativecommons.org/licenses/by-sa/2.5/cn/
退订: python-cn+unsub...@googlegroups.com (向此发空信即退!)
如果你的编辑器真的支持自动缩进的话,你是完全不会遇到需要用 tab 键的时候的。
您好,我是一个Python的新手,现在在用Eclipse的PyDEV写Python程序,您觉得这个选择正确吗?还有就是想问一下您推荐用什么编辑器(我在使用Ubuntu)?非常感谢
吐槽一下,除了配置,我基本都用emacs。配置是用vim的。
吐槽点在哪里?你想想用emacs的人什么最重要。
From P81HD
我觉得缩进语法还是很直观的, 多看看就会习惯的。但是TAB和space混排的问题就比较头疼的,我也经常会在上面栽跟头。比如在别的电脑上想修改一下程序,如果没有好的编辑器就会比较麻烦。既然Python推荐使用4个空格作为缩进,我感到疑惑的是为什么Python没有禁止使用Tab。或者干脆从语法上只认4个空格作为缩进,那就不会有这么多麻烦了。Python没有这样规定,是因为有人偏好用Tab或者2个空格吧。有时候会发现一段有用的代码,但是缩进格式和自己的不同,于是还得调整它的缩进格式才能使用。
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
在 vim 中是这样的:先用 V 键(大写的V)将整块代码选择,然后按 >> (就是两个大于号),此法增加缩进一级,重复使用可以多增加几级,按小于号可减少缩进。
2011/11/15 马博文 <iambo...@gmail.com>:
> V键是在命令模式还是视图模式下使用的?命令模式下我使用>缩进成功了,视图模式下只能手动的选择一段代码,然后按>缩进,而且只能缩进一次,我那里操作出问题了么?
> thanks
> regards
> Bowen
>
> 在 2011年11月15日 上午11:23,pansz <pan.s...@gmail.com>写道:
>>
>> 2011/11/13 walk notes <pytho...@gmail.com>:
>> > 需要啊,突然发现一整块代码都需要整体再缩进一层的时候。
>> >>
>> >> 如果你的编辑器真的支持自动缩进的话,你是完全不会遇到需要用 tab 键的时候的。
>> >>
>>
>> 在 vim 中是这样的:先用 V 键(大写的V)将整块代码选择,然后按 >>
>> (就是两个大于号),此法增加缩进一级,重复使用可以多增加几级,按小于号可减少缩进。
--
"""
Qt Zhou
Pythoner, Linuxer.
"""

吕明明 | 技术部
MP :15110245316 Tel:010-85870206-8771
Fax: 010-85870206-8000
E-mail:lvmin...@ready2go.cn
Add:北京市朝阳区百子湾路石门村5号东朝时代广场西区1号楼108 100022"""
"""
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
要想熟练vim可以认为:一切命令都是基于命令模式的,其他的所有模式都是临时模式,换句话说vim只有一个模式。当你认为 vim
只有一个模式的时候,你的 vim 一般就已经非常纯熟了。
V 键之后可以使用 j 和 k 等行动类命令上下移动,以选择多行。
多数行动命令前面可以加数字,例如缩进3级就 3>
那么 Vkkk3> 就把当前行与前三行都增加了3级缩进,这里k可以被替代为任何行动类命令。
如果不使用 V 键,双 > 可以直接控制当前行。