Python基础编程 内置函数

内置函数

内置函数(一定记住并且精通)

  • print()屏幕输出

  • int():pass

  • str():pass

  • bool():pass

  • set(): pass

  • list() 将一个可迭代对象转换成列表

  • tuple() 将一个可迭代对象转换成元组

  • dict() 通过相应的方式创建字典。

    # 创建字典的几种方式
    #直接创建
    dic = {1: 2}
    #字典推导式
    print({i: 1 for i in range(3)})
    dict()
    #dict创建
    dic = dict(one=1, two=2, three=3)
    print(dic)
    #fromekeys 方法创建
    fromkeys()
    
  • abs() 返回绝对值

  • sum() 求和

print(sum([1,2,3]))		#4
print(sum((1,2,3),100)) # 104 从100开始算总和
  • min() 求最小值
通过设置key去使用min
# 返回值是什么就按照什么比较最小的。
例1:
找年龄最小的元组:l1 = [('alex', 73, 170), ('太白', 18, 185), ('武大', 35, 159),]
print(min(l1,key=lambda x:x[1]))		#('太白', 18, 185)
#key = 函数名,#min 会自动的将可迭代对象的每一个元素作为实参传给x,
# 将遍历的那个元素即是 ('太白', 18) 返回
  • max() 求最大值

  • reversed() 对一个可迭代对象进行翻转,返回一个迭代器

  • bytes()把字符串转换成bytes类型

    bin:将十进制转换成二进制并返回。

    oct:将十进制转化成八进制字符串并返回。

    hex:将十进制转化成十六进制字符串并返回。

print(bin(10),type(bin(10)))  # 0b1010 <class 'str'>
print(oct(10),type(oct(10)))  # 0o12 <class 'str'>
print(hex(10),type(hex(10)))  # 0xa <class 'str'>

zip() 拉链方法

lst1 = [1,2,3]
lst2 = ['a','b','c','d']
lst3 = (11,12,13,14,15)
for i in zip(lst1,lst2,lst3):
    print(i)
(1, 'a', 11)
(2, 'b', 12)
(3, 'c', 13)

sorted排序函数

lst=[9,8,6,48,23,615,]
new_lst=sorted(lst)		#返回的新列表是经过排序的
print(new_lst)			#[6, 8, 9, 23, 48, 615]	 #原列表不会改变
lst3 = sorted(lst,reverse=True)
print(lst3)   #倒叙						
与匿名函数配合使用
lst = [{'id':1,'name':'alex','age':18},
    {'id':2,'name':'wusir','age':17},
    {'id':3,'name':'taibai','age':16},]
print(sorted(lst,key=lambda x:x['age']))
#[{'id': 3, 'name': 'taibai', 'age': 16}, {'id': 2, 'name': 'wusir', 'age': 17}, {'id': 1, 'name': 'alex', 'age': 18}]

filter筛选过滤返回一个生成器

生成器表达式的筛选模式
lst = [{'id':1,'name':'alex','age':18},
        {'id':1,'name':'wusir','age':17},
        {'id':1,'name':'taibai','age':40},]
print(list(filter(lambda x:x['age']<20,lst)))
#[{'id': 1, 'name': 'alex', 'age': 18}, {'id': 1, 'name': 'wusir', 'age': 17}]
function: 用来筛选的函数,在filter中会自动的把iterable中的元素传递给function,然后根据function返回的True或者False来判断是否保留此项数据

map返回一个迭代器,相当于生成器表达式:循环模式

lst = [1,2,3,4,5]
#生成器表达式的筛选模式
print(list(map(lambda s:s*s,lst)))		#[1, 4, 9, 16, 25]

reduce

from functools import reduce
'''
第一次:x,y 1,2 求和 3 记录到内存
第二次:x,y 3,3 求和 6 记录到内存
第三次:x,y 6,4 .........

'''
# print(reduce(lambda x,y: x+y,[1,2,3,4,5]))
# print(reduce(lambda x,y: 2*x+y, [1,2,3]))
# print(reduce(lambda x,y: x+y, ['alex','s','b']))  # 可以用字符串拼接

内置函数(了解,尽量记住)

  • eval:执行字符串类型的代码,并返回最终结果。
eval('2 + 2')  # 4
n=81
eval("n + 4")  # 85
eval('print(666)')  # 666
  • exec:执行字符串类型的代码。
s = '''
for i in [1,2,3]:
    print(i)
'''
exec(s)
  • help:函数用于查看函数或模块用途的详细说明。
print(help(list))
print(help(str.split))
  • int:函数用于将一个字符串或数字转换为整型。
print(int())  # 0
print(int('12'))  # 12
print(int(3.6))  # 3
print(int('0100',base=2))  # 将2进制的 0100 转化成十进制。结果为 4
  • callable:函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功。
name = 'alex'
def func():
    pass
print(callable(name))  # False
print(callable(func))  # True
  • int:函数用于将一个字符串或数字转换为整型。
  • float:函数用于将整数和字符串转换成浮点数。
  • complex:函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。。
  • divmod:计算除数与被除数的结果,返回一个包含商和余数的元组(a // b, a % b)。
  • round:保留浮点数的小数位数,默认保留整数。
  • pow:求x y次幂。(三个参数为xy的结果对z取余)
  • bytes:用于不同编码之间的转化。
  • ord:输入字符找该字符编码的位置
  • chr:输入位置数字找出其对应的字符
  • repr:返回一个对象的string形式(原形毕露)。
# %r  原封不动的写出来
# name = 'taibai'
# print('我叫%r'%name)

# repr 原形毕露
print(repr('{"name":"alex"}'))
print('{"name":"alex"}')
  • all:可迭代对象中,全都是True才是True
  • any:可迭代对象中,有一个True 就是True
posted @ 2019-08-07 21:34  笑oy  阅读(134)  评论(0编辑  收藏  举报
回到顶部