class C(object):
def __init__(self):
self._x = None
def getx(self):
return self._x
def setx(self, value):
self._x = value
def delx(self):
del self._x
x = property(getx, setx, delx, "I'm the 'x' property.")
range的使用:
输出范围之内的数值
for i in range(1, 5):
print(i)
result:
1
2
3
4
5
repr的使用:
函数将对象转化为供解释器读取的形式
s = 'RUNOOB'
repr(s)
"'RUNOOB'"
dict = {'runoob': 'runoob.com', 'google': 'google.com'};
repr(dict)
"{'google': 'google.com', 'runoob': 'runoob.com'}"
reversed的使用:
返回一个反转的迭代器
# 字符串
seqString = 'Runoob'
print(list(reversed(seqString)))
# 元组
seqTuple = ('R', 'u', 'n', 'o', 'o', 'b')
print(list(reversed(seqTuple)))
# range
seqRange = range(5, 9)
print(list(reversed(seqRange)))
# 列表
seqList = [1, 2, 4, 3, 5]
print(list(reversed(seqList)))
result:
['b', 'o', 'o', 'n', 'u', 'R']
['b', 'o', 'o', 'n', 'u', 'R']
[8, 7, 6, 5]
[5, 3, 4, 2, 1]
round的使用:
返回浮点数x的四舍五入值
print "round(80.23456, 2) : ", round(80.23456, 2)
print "round(100.000056, 3) : ", round(100.000056, 3)
print "round(-100.000056, 3) : ", round(-100.000056, 3)
result:
round(80.23456, 2) : 80.23
round(100.000056, 3) : 100.0
round(-100.000056, 3) : -100.0
set的使用:
不可重复元素
a=set((1,2,3,"a","b"))
setattr的使用:
设置属性值,该属性必须存在
class A(object):
bar = 1
a = A()
print(getattr(a, 'bar')) # 获取属性 bar 值
1
setattr(a, 'bar', 5) # 设置属性 bar 值
print(a.bar)
slice的使用:
实现切片对象,主要用在切片操作函数里的参数传递
myslice = slice(5) # 设置截取5个元素的切片
print(myslice)
print(slice(None, 5, None))
arr = range(10)
print(arr)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(arr[myslice]) # 截取 5 个元素
[0, 1, 2, 3, 4]
sorted的使用:
所有可迭代的对象进行排序操作
a = [5,7,6,3,4,1,2]
b = sorted(a) # 保留原列表
print(a)
[5, 7, 6, 3, 4, 1, 2]
print(b)
[1, 2, 3, 4, 5, 6, 7]
L=[('b',2),('a',1),('c',3),('d',4)]
sorted(L, cmp=lambda x,y:cmp(x[1],y[1])) # 利用cmp函数
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
print(sorted(L, key=lambda x:x[1])) # 利用key
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
print(sorted(students, key=lambda s: s[2]) ) # 按年龄排序
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
print(sorted(students, key=lambda s: s[2], reverse=True) ) # 按降序
[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
staticmethod的使用:
返回函数的静态方法
class C(object):
@staticmethod
def f():
print('runoob');
C.f(); # 静态方法无需实例化
cobj = C()
cobj.f() # 也可以实例化后调用
str的使用:
字符串
str = "wyc"
方法:
cpitalize 首字母变大写
count 子序列个数
decode 解码
encode 编码针对unicode
endswith 是否以xxx结束
find 寻找子序列位置,如果没有找到,返回-1
format 字符串格式化
index 子序列位置,如果没有找到,报错
isalnum 是否是字母数字
isalpha 是否是字母
isdigit 是否是数字
islower 是否小写
join 拼接
lower 变小写
lstrip 移除左侧空白
replace 替换
sum的使用:
求数值整合
print(sum(1+1))
result:
2
super的使用:
用于调用父类(超类)的一个方法
Python3.x 和 Python2.x 的一个区别是: Python 3 可以使用直接使用 super().xxx 代替 super(Class, self).xxx
python3
class A:
pass
class B(A):
def add(self, x):
super().add(x)