在交互式界面下,与Perl类似,当上一次执行的命令返回值没有显式的用变量存储,且返回值不为None的时候,这个返回值会被交互式环境动态的存储在变量_当中。例如:
>>> a=1
>>> a
1
>>> _
1
>>> a=None
>>> a
>>> _
1
在脚本当中,有一种技术叫“假读”,用在当函数返回多个值(一个tuple),而你只关心其中一部分的时候,往往用 _
来将不关心的那部分接住,以后不再使用。不过在使用“假读”技术的时候,最好不要用 _
,而另外起一个显眼一点的名字,原因见后面。“假读”例子:
_ , ext =
os.path.splitext('/tmp/something.txt')
不过最好另起个名字,比如:
dummy, ext =
os.path.splitext('/tmp/something.txt')
或者直接指定也可以:
ext =
os.path.splitext('/tmp/something.txt')[1]
还有一个重要的函数是 _( ),用来国际化的处理字符串,将给出其参数的国际化版本,比如在中文的local下 _("Hello")
会返回是 "你好",所以Widget.set_text(_("Hello")) 相当于
Widget.set_text("你好")。正因为如此,如果你在使用“假读”技术的时候用了 _
,那么这个国际化的函数将被覆盖掉,在一个大工程当中,这就是一场灾难。
阅读(763) | 评论(0) | 转发(0) |