day7—python——内置函数

input()
type()
len()
print()
enumerate()
list()
dict()
tuple()
set()
str()
int()
float()
bool()
print(bool('asd')) #打印true 非空即真
print(bool('')) #打印false 非空即真
print(bool([])) #打印false 非空即真
print(max([1,2,3,4,7,8,9]))
print(max((1,2,3,4,7,8,9))) #不一定必须是list,只要是可以循环的都可以
print(max('567343')) #打印7
print(min(1,2,3,4,7,8,9))
print(round(3.1323432,2)) #取几位小数
sorted([5,6,7,343]) #排序 [5, 6, 7, 343] 可以list排序也可以字符串排序
print(sorted('567343')) #['3', '3', '4', '5', '6', '7']
s='1223423423'
print(list(reversed(sorted(s)))) #反转排序
print(sorted(s,reverse=True)) #反转排序
print(ord('a'))#字母转成阿斯克码表(ASCII码表)里面的值
print(chr(97))#把数字转成阿斯克码表里面的字母
res = any([1,1,0]) #如果这个list里面有一个为真,就返回true print(res)
res = all([1,1,1,1,1]) #如果这个list里面全部为真,就返回true

dir()方法的使用,比如有些方法无法用点点出来,可以用dir显示出可以调用的所有方法
import hashlib
print(dir(hashlib)) #显示所有hashlib的方法
m = hashlib.md5('abcd'.encode())
print(dir(m))
print(m.hexdigest())

eval()执行简单的python代码
res = eval('1+1') #传入的是字符串
print(res)

res = eval('{"a":"1"}') #定义一些变量
print(res)


f = open('a.txt').read()
#定义a.txt里写的内容为:{'username':'abc','password':12345} 这里文件的内容为字符串,如果想转为字典的话,eval一下,首先这条代码为打开这个txt,直接读取
print(type(f)) #打印f的类型为字符串
res = eval(f) #执行简单的python代码
print(res)
print(type(res)) #打印res的类型为字典


my_code= '''
def my():
print('运行my,xioaojun')
my()
'''
#以上是一个字符串,exec可以把字符串执行成代码
exec(my_code) #执行python代码的
--------------------------------------------------------------------------------

#将列表l补零,首先要将列表中的值转成字符串
l=[1,3,5,8,2,9,12,13]
l2=[]
for i in l:
l2.append(str(i).zfill(2))
print(l2)
#以上为麻烦的方法

def bl(i):
return str(i).zfill(2)
# l=[1,3,5,8,2,9,12,13]
l='12345677' #字符串、list都可以循环
res = set(map(bl,l)) #map是循环帮你调用函数,然后保存函数的返回值的,放到一个list里面,转成list,tuple,set都可以
print(res)

--------------------------------------------------------------------------------

与map对比:

def bl(i):
return str(i).zfill(2)
# l=[1,3,5,8,2,9,12,13]
l='12345677'
res = list(map(bl,l)) #map是循环帮你调用函数,然后保存函数的返回值的,放到一个list里面
f = list(filter(bl,l)) #filter也是循环调用函数的,如果函数返回的值是真,那么就保存这个值
print(res)
print(f)

['01', '02', '03', '04', '05', '06', '07', '07']
['1', '2', '3', '4', '5', '6', '7', '7']

filter是保留原来的值

l = '12345677'
def bl(i):
if i > '3':
return True

f = list(filter(bl, l))
print(f)

['4', '5', '6', '7', '7'] 因为123返回的值为false
posted @ 2018-10-27 22:27  apollecn  阅读(152)  评论(0编辑  收藏  举报