初学Python——介绍一些内置方法

时间:2024-09-27 12:34:08

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次方
#

15、round()

将浮点数保留n位小数

print(round(3.567658,3)) #将浮点数保留3位小数
# output: 3.568

16、sum()

对列表求和

print(sum(d)) #列表求和
#

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__()

调用模块的另一种方法,括号内写的是模块的名称字符串