以下不是python内置函数的是_python课堂整理16---内置函数

1. abs :求绝对值

print(abs(-1))

2. all()传入一个可迭代对象,对该对象进行bool值运算,若都为True 就返回True,有一个为假,就返回False

print(all([12,'asds',345]))

print(all('')) #特例 若参数为空也返回True

print(all((0,)))

print(all([]))

1697453-20190705232636451-2119972355.png

3. any () 和all()相反,只要有一个为真就返回Ture

print(any([1231, 0]))

print(any([0]))

1697453-20190705232906874-1778792253.png

4. 进制转换

print(bin(3)) # 10进制转化为二进制

print(hex(15)) # 10进制转化为16进制

print(oct(15)) # 10 进制转化为8进制

5. bool() 判断布尔值,除了下面三个,其他都返回True

print(bool(0))

print(bool('')) #可以是空列表空元组

print(bool(None))

6. 编码:bytes:把字符串转换为字节,需要手动指明编码格式

name = '大白'

print(bytes(name, encoding = 'utf - 8')) # utf-8 一个中文 = 3 个字节

1697453-20190705234436912-215204413.png

解码:用什么格式编码就用什么格式解码,gbk 用2个字节表示中文,ASCII码不能表示中文,python3 默认utf - 8 解码

name = '大白'

print(bytes(name, encoding = 'utf - 8').decode('utf-8'))

1697453-20190705234424020-1355435034.png

7. chr() 求一定范围内某个数字对应的ascii 码

print(chr(1223))

1697453-20190705235012859-1138805754.png

8. dir() 打印某一对象下面有哪些方法

print(dir(dict))

1697453-20190705235217218-989705352.png

9. divmod() 用来作分页功能,第一个参数是内容总数,第二个参数是一页要显示的内容数,可求得要分几页,若有余数,自行加一

print(divmod(10, 3)) 10/3 商3余1

1697453-20190705235418283-510322211.png

10. eval

①把字符串中的数据结构给提取出来

dic_str1 = "{'name': 'alex'}"

print((eval(dic_str1)))

print(type(eval(dic_str1)))

print(type(dic_str1))

1697453-20190706103425603-110581742.png

②把字符串的表达式进行运算

express = '1 + 1'

print(eval(express))

1697453-20190706103627106-1104738610.png

11. hash() 可hash的数据类型即不可变数据类型,不可hash的数据类型即可变数据类型

特征:①得到的hash值不会随着传入内容的增长而变长(固定长度)

②不能根据hash值反推出原来内容

③若原参数发生变化,得到的hash值也跟着变化,可用来检测数据是否被篡改

print(hash('shfduqwhfkwsajdfh9237498231'))

print(hash('5211314'))

print(hash('5211314safhciwsafhwiofhdajskdhjioas;fhdasiodcjasodfacxasd'))

name = 'jinling'

print(hash(name))

print(hash(name))

name = 'dabai'

print(hash(name))

1697453-20190706104627037-2146150118.png

12. isinstance() 判断类型(学完面向对象再作修改)

print(isinstance(1, int))

print(isinstance('abc', str))

print(isinstance([], list))

print(isinstance([], tuple))

1697453-20190706104923727-507546052.png

13. globals() 和locals() 查看全局变量和局部变量

name = '天青色等烟雨而我在等你'

print(globals())

def test():

age = '18'

print(locals())

test()

1697453-20190706105506949-36279967.png

1697453-20190706105517106-1899450884.png

14. max 和min 最大值和最小值,max()里面传入的是可迭代类型

age_dic = {'alex3': 18, 'liu1': 17, 'jinling2': 16}

print(max(age_dic.values())) #指定比较values

print(max(age_dic)) #默认比较的是key, 一位一位的比较

1697453-20190706110114094-697003254.png

从前往后循环比较,第一位最大就不比了,不同类型之间不能进行比较

l1 = [

(5, 'e'),

(1, 'l'),

(3, 'o'),

(2, 'v')

]

print(max(l1))

1697453-20190706110349250-173014465.png

15. zip函数,里面传入两个参数(序列),形成一一对应关系(拉链效果)

print(list(zip(['l', 'o', 'v', 'e'], [1, 2, 3, 4])))

1697453-20190706155038740-693197704.png

p = {'name': 'alex', 'age': 18, 'gender': 'none'}

print(list(zip(p.keys(), p.values())))

1697453-20190706155409617-586858547.png

16. max的高级用法,结合zip(min不在赘述,和max使用方法相同)

dic = {'age': 18, 'age2': 10}

print(max(dic)) #默认比较的是key

print(max(dic.values())) #比较的是key,但不知道是哪个key的

print(max(zip(dic.values(), dic.keys())))

1697453-20190706160111980-699583890.png

people = [

{'name': 'dabai', 'age': 21},

{'name': 'jinling', 'age': 19},

{'name': 'liu', 'age': 20},

{'name': 'sb', 'age': 100}

]

print(max(people, key=lambda dic: dic['age'])) #自己写函数规则

1697453-20190706160807960-180061097.png

自己结合max函数写了个排序(嘻嘻)

li = [3, 5, 9, 7]

l2 = []

while len(li) > 1:

a = min(li)

l2.append(a)

li.remove(a)

l2.append(li[0])

print(l2)

1697453-20190706162346733-893213061.png

17. ord ,和chr功能相反,ascill码的对应值

print(chr(97))

print(ord('a'))

1697453-20190706172123786-1465327393.png

18. pow 幂运算

print(pow(2, 2)) #2**3

print(pow(2, 2, 3)) #2**3 % 3

1697453-20190706172433183-289919906.png

19. reversed() 翻转

l1 = [1, 2, 3, 4, 5]

print(list(reversed(l1)))

1697453-20190706172651948-1352640879.png

20. round() 四舍五入

print(round(4.6))

1697453-20190706172842146-1404911503.png

21. set() 把参数转换为集合类型

print(set('jinling'))

1697453-20190706173407217-1009579908.png

22. since 切片,可以指定步长

l = 'jinling'

s1 = slice(3, 5)

print(l[s1])

s2 = slice(2, 5, 2)

print(l[s2])

print(s2.start)

print(s2.stop)

print(s2.step)

1697453-20190706174254613-1364228755.png

23.sorted 排序,不同类型不能排

l = [3, 2, 15, 7]

print(sorted(l))

1697453-20190706174522921-1194300801.png

高级用法

people = [

{'name': 'dabai', 'age': 21},

{'name': 'jinling', 'age': 19},

{'name': 'liu', 'age': 20},

{'name': 'sb', 'age': 100}

]

print(sorted(people, key = lambda dic: dic['age']))

1697453-20190706174758607-411836224.png

name_dic = {

'liuwenhao': 10000,

'jinling': 9999,

'dabai': 9998

}

print(sorted(name_dic)) #默认比较key值

print(sorted(name_dic, key = lambda key: name_dic[key]))

print(sorted(zip(name_dic.keys(), name_dic.values())))

1697453-20190706175749693-1250599960.png

24. sum求和

l1 = [1, 2, 4, 5, 6]

print(sum(l1))

1697453-20190706205221107-1862889160.png

25. type 查看数据类型

print(type('love'))

26. vars

def test():

msg = '月下门筒喟叹昨夜太平长安'

print(locals())

print(vars()) #没有参数时,效果和locals一样

test()

print(vars(int)) #把int下所有方法存成字典的形式

1697453-20190707103437030-1357077736.png

27. __import__

假如要导入的模块是字符串

module_name = 'test'

m = __import__(module_name)

m.say_hai() #使用test中的方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值