目录
1、basestring
语法:
isinstance(obj, basestring)
作用 / 返回值:
basestring是一个抽象类,不能被调用或实例化;
isinstance(obj, basestring) 等价于 isinstance(obj, (str, unicode));
可以判断一个对象是否为 str 或 unicode 的实例;
2、execfile
语法:
python3中使用:exec(open(filename).read())
作用 / 返回值:
用来执行一个文件;
代码演示:
文件file.py如下:
exec(open('file.py').read())
3、issubclass
语法:
issubclass(class, classinfo)
两个参数均为类名;
作用 / 返回值:
用于判断参数 class 是否为 classinfo 的子类;(是子类返回True,否则返回False)
代码演示:
class A:
pass
class B(A):
pass
class C(B):
pass
class D:
pass
print('1、', issubclass(B, A))
print('2、', issubclass(C, A))
print('3、', issubclass(D, A))
4、print
语法:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
objects:一次可以输入多个对象,用逗号间隔;
sep:用来间隔多个对象,默认是空格;
end:规定输出后以什么结尾,默认是换行符;
file:要写入的文件对象;
flush:输出是否被缓存常取决于file,但若flush为Ture,流会被强制刷新;
作用 / 返回值:
打印输出;
代码演示:
f = open('file.txt', 'w')
a, b, c = 1, 'bbb', [1, 2, 3]
print(a, b, c)
print(a, b, c, sep='##')
print(a, '\n', b, '\n', c, file=f)
5、super
语法:
super(type[, object-or-type])
type:类;
object-or-type:类,一般是self;
作用 / 返回值:
用于调用父类的一个方法;
解决多重继承的问题;
代码演示:
class A:
def __init__(self):
self.parent = 'I\'m the parent'
print('Parent')
def bar(self, message):
print('%s from Parent' % message)
class B(A):
def __init__(self):
super(B, self).__init__()
print('Child')
def bar(self, message):
super(B, self).bar(message)
print('Child bar function')
print(self.parent)
if __name__ == '__main__':
child = B()
child.bar('hello')
6、bin
语法:
bin(x)
x:int 或 long int 数字;
作用 / 返回值:
返回一个整数 int 或者长整数 long int 的二进制表示;(返回的是字符串)
代码演示:
a = bin(127)
print(a)
print(type(a))
7、iter
语法:
iter(object[, sentinel])
object:支持迭代的对象;
sentinel:若传入了这个参数,则object必须是一个可调用的对象(如函数),此时iter创建了一个迭代器对象,每次调用这个对象的__next__()方法时,都会调用object;
作用 / 返回值:
用来生成迭代器;
代码演示:
a_list = [1, 2, 3, 'a', 'b', 'c']
for i in iter(a_list):
print(i)
8、property
语法:
class property([fget[, fset[, fdel[, doc]]]])
fget:获取属性值的函数;
fset:设置属性值的函数;
fdel:删除属性值的函数;
doc:属性描述信息;
作用 / 返回值:
将方法当作属性来访问;
在新式类中返回属性值;
代码演示:
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.")
经过以上定义后,在用户端访问x即可,无需使用函数名进行操作;
9、bool
语法:
bool([x])
作用 / 返回值:
将给定参数转化为布尔类型(Ture / False);
若无参数,返回False;
bool 是 int 子类;
代码演示:
print('1、', bool())
print('2、', bool(0))
print('3、', bool(1))
print('4、', bool(2))
print('5、', bool(False))
print('6、', bool(True))
print('7、', bool(''))
print('8、', issubclass(bool, int))
10、filter
语法:
filter(function, iterable)
function:判断函数;
iterable:序列,可迭代对象;
作用 / 返回值:
用于过滤序列;
序列的每个元素传递给函数进行判断,返回True或False,最后将返回Ture的函数放在新列表中;
(过滤到不符合条件的元素,返回迭代器对象)
代码演示:
# 过滤出所有的奇数
a_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
def is_odd(x):
return x % 2 == 1
new_list = filter(is_odd, a_list)
for i in new_list:
print(i, end=' ')
参考:https://www.runoob.com/python/python-func-super.html