11 内置函数

print()
input()
len()
type()
open()
tuple()
list()
int()
bool()
set()
dir()     #可以查看变量拥有的方法。
id()
str()
callable()		#查看是否可以调用。如果是变量,返回False
print(locals())  #返回本地作用域中的所有名字
print(globals()) #返回全局作用域中的所有名字
global 变量
nonlocal 变量
exec('print(123)')		#没有有返回值
eval('print(123)')		#有返回值,最好不要用,只能用在明确知道要执行的代码是什么。
print(eval('1+2+3+4'))
print(exec('1+2+3+4'))

输出:
在这里插入图片描述
exec和eval都可以执行 字符串类型的代码
eval有返回值 —— 有结果的简单计算
exec没有返回值 —— 简单流程控制
eval只能用在你明确知道你要执行的代码是什么

code1 = 'for i in range(0,10): print (i)'
compile1 = compile(code1,'','exec') 	#compile对字符串进行处理
exec(compile1)

code2 = '1 + 2 + 3 + 4'
compile2 = compile(code2,'','eval')
print(eval(compile2))

code3 = 'name = input("please input your name:")'
compile3 = compile(code3,'','single')		#有交互的时候,后面的属性,要写single
exec(compile3) #执行时显示交互命令,提示输入
print(name)

进制转换

print(bin(10)) 		#二进制
print(oct(10))		#八进制
print(hex(10))		#十六进制

数学运算

print(abs(-5)) 	#绝对值
divmod(7,3)		#div 除法  mod取余     除余方法
divmod(9,5)
round(3.1415926,2)		#小数点精确
pow(3,2)		#求幂运算
pow(2,3,3)	#2的3次方除以3取余
pow(3,2,1)	#3的2次方除以1取余
sum(iterable,start)	#iterable必须可迭代,且是数字,start表示从几开始加。
print(min(1,2,3,-4))
print(min(1,2,3,-4,key = abs))	#把可迭代的元素全部按绝对值计算最小值,输出1
print(max(1,2,3,-4,key = abs))	##把可迭代的元素全部按绝对值计算最小值,输出-4
数据结构

dict list tuple set str

数据类型

int bool

l = [1, 2, 3, 4, 5]
l.reverse()
print(l)

输出:
在这里插入图片描述

l1 = [1,2,3,4,5]
l1.reversed()		#保留源列表,返回一个反向的迭代器
print(l1)

输出:
在这里插入图片描述

bytes 转换成bytes类型

# 我拿到的是gbk编码的,我想转成utf-8编码
print(bytes('你好',encoding='GBK'))     # unicode转换成GBK的bytes
print(bytes('你好',encoding='utf-8'))   # unicode转换成utf-8的bytes

输出:
在这里插入图片描述

网络编程 只能传二进制,照片和视频也是以二进制存储,html网页爬取到的也是编码
b_array = bytearray('你好',encoding='utf-8')
print(b_array)
print(b_array[0])
# '\xe4\xbd\xa0\xe5\xa5\xbd'
s1 = 'alexa'
s2 = 'alexb'

输出:
在这里插入图片描述

下面的函数是必须要掌握的,特点是什么。

zip()

l = [1,2,3,4,5]
l2 = ['a','b','c','d']
l3 = ('*','**',[1,2])
d = {'k1':1,'k2':2}
for i in zip(l,l2,l3,d):
    print(i)

输出:
在这里插入图片描述

filter 是一个过滤函数

def is_str(s):
    return s and str(s).strip()
ret = filter(is_str, [1, 'hello','','  ',None,[], 6, 7, 'world', 12, 17])
print(ret)  #返回迭代器,节省空间。
for i in ret:
    print(i)

输出:
在这里插入图片描述

map

ret = map(abs,[1,-4,6,-8])
print(ret)
for i in ret:
    print(i)

输出:
在这里插入图片描述

filter和map的区别

filter 执行了filter之后的结果集合 <= 执行之前的个数
filter只管筛选,不会改变原来的值
map 执行前后元素个数不变
值可能发生改变

l = [1,-4,6,5,-10]
# l.sort(key = abs)   # 在原列表的基础上进行排序
# print(l)

print(sorted(l,key=abs,reverse=True))      # 生成了一个新列表 不改变原列表 占内存
print(l)

输出:
在这里插入图片描述

l = ['   ',[1,2],'hello world']
new_l = sorted(l,key=len)
print(new_l)

输出:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值