初学Python——介绍一些内置方法
1、abs()求绝对值
a=abs(-10)
print(a)
# 输出:10
2、all()
用来检测列表元素是否全部为空、0、False
print(all([0,5,4])) #当列表所有元素都为空、False或0时,返回值为False,否则都为True
print(all({1:1,2:2})) #不能测试字典,所以返回True
# 输出: False True
3、any()
用来检测列表是否全部不为空、False、0
print(any([0,5,4])) #当列表所有元素都不为空、False或0时,返回值为True,否则都为False
# 输出:True
4、bin()
将一个整数或者长整形转化成二进制数
print(bin(10)) # output: 0b1010
5、callable()
用来检查对象是否可调用
print(callable(a)) # output: False
6、chr() 和 old()
分别是:将数字对应的ASCII的字符返回;将字符对应的ASCII码值返回
print(chr(97))
print(ord("w"))
# output:a 119
7、dir()
输出此种数据类型所有的内置方法
b={}
print(dir(b))
#output: ['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
8、exec()
动态地执行一个字符串,例如:
x = 10
expr = '''
z = 30
sum = x + y + z
print(sum)
'''
def func(): # exec动态地执行一块代码
y = 20
exec(expr)
exec(expr, {'x': 1, 'y': 2}) #在原来代码的基础上修改数据,得到不一样的结果
exec(expr, {'x': 1, 'y': 2}, {'y': 3, 'z': 4})
func()
# output:
60 33 34
9、lambda
匿名函数
c=lambda x:x+10 #匿名函数
print(c(50)) #匿名函数的调用和传参
print((lambda x:x+5)(2)) #匿名函数的传参调用
# 输出:60 7
10、filter()
filter函数的作用是,过滤出你想要的数据
res=filter(lambda n:n>5,range(10)) #filter函数的作用是 过滤出你想要的数据
for i in res:
print(i)
输出: 6 7 8 9
11、globals()
输出整个程序所有的变量,返回一个字典。变量名是key,值是value
12、max() ,min()
返回列表里的最大值和最小值
d=[5,6,12]
print(max(d)) #返回列表里的最大值
print(min(d)) #返回列表的最小值
输出:12 5
13、oct()
将十进制数转化成八进制数
print(oct(5))
print(oct(10)) #将十进制转化成8进制
# output:
0o5
0o12
14、pow()
计算乘方
print(pow(2,8)) #2的8次方
# 256
15、round()
将浮点数保留n位小数
print(round(3.567658,3)) #将浮点数保留3位小数
# output: 3.568
16、sum()
对列表求和
print(sum(d)) #列表求和
# 23
17、sorted()
对所有可迭代对象进行排序
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
iterable:是可迭代类型;
cmp:用于比较的函数,比较什么由key决定;
key:用列表元素的某个属性或函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True 降序 或者 reverse = False 升序,默认升序;
返回值:是一个经过排序的可迭代类型,与iterable一样。
(1)按照元素长度排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
def f(x):
return len(x)
sort(key=f)
print (L)
# output:[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]
(2)按照元素中的某个值来排序,例如:
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]
按照年龄来排序:
①用key函数来排序
sorted(students, key=lambda x : x[2])
# [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
②用cmp函数来排序
sorted(students, cmp=lambda x,y : cmp(x[2], y[2]))
# [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
18、zip()
将两个列表拉在一起,形成zip数据类型
a=[1,2,3,4]
b=["a","b","c","d"]
print(zip(a,b)) #将两个列表拉在一起,形成zip数据类型
for i in zip(a,b):
print(i)
# <zip object at 0x00000249F0946D48>
19、__import__()
调用模块的另一种方法,括号内写的是模块的名称字符串