Python的隐藏功能
Python编程语言的鲜为人知的但有用的功能是什么?
快速链接到答案:
.get
值 import this
__missing__
项 .pth
文件 try/except/else
print()
功能 with
声明 负面回合
round()
函数将浮点数round()
为以十进制数字给出的精度,但精度可能为负数:
>>> str(round(1234.5678, -2))
'1200.0'
>>> str(round(1234.5678, 2))
'1234.57'
注意: round()
总是返回上面例子中使用的float, str()
,因为浮点数学是不精确的,在2.x下,第二个例子可以打印为1234.5700000000001
。 另请参阅decimal
模块。
乘以一个布尔值
我一直在web开发中做的一件事是可选地打印HTML参数。 我们都看过其他语言的代码:
class='<% isSelected ? "selected" : "" %>'
在Python中,你可以乘以一个布尔值,它完全符合你的期望:
class='<% "selected" * isSelected %>'
这是因为乘法操作会将布尔值强制为一个整数(0表示False,1表示True),而python将字符串乘以int将重复N次。
Python的高级切片操作有一个几乎不知道的语法元素,省略号:
>>> class C(object):
... def __getitem__(self, item):
... return item
...
>>> C()[1:2, ..., 3]
(slice(1, 2, None), Ellipsis, 3)
不幸的是,它仅仅是有用的,因为只有在涉及元组时才支持省略号。
链接地址: http://www.djcxy.com/p/7411.html