1、取商和余数
>>> divmod(10, 3)
(3, 1)
2、字符串格式化
格式化输出字符串,format(value, format_spec)
实质上是调用了value
的format(format_spec)
方法。
>>> print("I am {0}, age {1}.".format("Jim",18))
I am Jim, age 18.
>>> print("{:+.2f}".format(3.1415926))
+3.14
3.1415926 | {:.2f} | 3.14 | 保留小数点后两位 |
---|---|---|---|
3.1415926 | {:+.2f} | +3.14 | 带符号保留小数点后两位 |
-1 | {:+.2f} | -1.00 | 带符号保留小数点后两位 |
2.71828 | {:.0f} | 3 | 不带小数 |
5 | {:0>2d} | 05 | 数字补零 (填充左边, 宽度为2) |
5 | {:x<4d} | 5xxx | 数字补x (填充右边, 宽度为4) |
10 | {:x<4d} | 10xx | 数字补x (填充右边, 宽度为4) |
1000000 | {:,} | 1,000,000 | 以逗号分隔的数字格式 |
0.25 | {:.2%} | 25.00% | 百分比格式 |
1000000000 | {:.2e} | 1.00e+09 | 指数记法 |
18 | {:>10d} | ' 18' | 右对齐 (默认, 宽度为10) |
18 | {:<10d} | '18 ' | 左对齐 (宽度为10) |
18 | {:^10d} | ' 18 ' | 中间对齐 (宽度为10) |
3、判断是否为某类
isinstance
判断*object
是否为类classinfo
*的实例,是返回True
isinstance(obj, class_or_tuple, /)
返回一个对象是类的实例还是类的子类的实例。
元组,如isinstance(x, (A, B,…))
,可以作为目标核对。这相当于"isinstance(x, A)
或isinstance(x, B)
还是……"等等。
例
>>> import pandas as pd
>>> df = pd.DataFrame(data=[0,1], index=[0,1])
>>> isinstance(df, pd.DataFrame)
True
4、聚合迭代器
创建一个聚合了来自每个可迭代对象中的元素的迭代器:
>>> x = [3,2,1]
>>> y = [4,5,6]
>>> list(zip(y,x))
[(4, 3), (5, 2), (6, 1)]
>>> a = range(5)
>>> b = list('abcde')
>>> b
['a', 'b', 'c', 'd', 'e']
>>> [str(y) + str(x) for x,y in zip(a,b)]
['a0', 'b1', 'c2', 'd3', 'e4']
5、不用else
和if
实现计算器
>>> from operator import *
>>> def calculator(a, b, k):
... return {
... '+': add,
... '-': sub,
... '*': mul,
... '/': truediv,
... '**': pow
... }[k](a, b)
>>> calculator(1, 2, '+')
3
>>> calculator(3, 4, '**')
81
-- 数据STUDIO --