一些重点内置函数(不全)

  1. eval()

执行字符串类型的代码,并返回最终结果。

print(eval('2 * 5')
# 10
  1. exec()

执行字符串类型的代码(代码格式一定要正确)。

s = '''
for i in range(5):
    print(i)
'''
# 0,1,2,3,4 
  1. ord()

输入字符串找该字符串的ASCII编码位置。

print(ord('A')
# 65
  1. chr()

输入ASCII编码找出其对应的字符。

print(chr(65)
# A

5.repr()

返回一个对象的string形式(原型毕露)

  1. all()

可迭代对象中,全部是True才是True

  1. any()

可迭代对象中,只要有一个为True就为True


重点

  1. print()

屏幕输出

''' 源码分析
def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
    """
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    file:  默认是输出到屏幕,如果设置为文件句柄,输出到文件
    sep:   打印多个值之间的分隔符,默认为空格
    end:   每一次打印的结尾,默认为换行符
    flush: 立即把内容输出到流文件,不作缓存
    """
'''
​
print(111,222,333,sep='*')  # 111*222*333
​
print(111,end='')
print(222)  #两行的结果 111222
​
f = open('log','w',encoding='utf-8')
print('写入文件',fle=f,flush=True)
  1. reversed()

将一个序列反转,返回反转序列的迭代器.

r = reversed('你好') #r是生成器

print(list(r) #['好','你']
  1. 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)

需要注意一点,如果各个可迭代对象元素个数不一样,则按照长度最短的返回。

  1. sorted()

直接上代码

语法:sorted(iterable,key=None,reverse=False)

iterable : 可迭代对象

key: 排序规则(排序函数),在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数.根据函数运算的结果进行排序

reverse :是否是倒叙,True 倒叙 False 正序

lst = [1,3,2,5,4]
lst2 = sorted(lst)
print(lst)    #原列表不会改变
print(lst2)   #返回的新列表是经过排序的
 
 
lst3 = sorted(lst,reverse=True)
print(lst3)   #倒叙
 
结果:
[1, 3, 2, 5, 4]
[1, 2, 3, 4, 5]
[5, 4, 3, 2, 1]

字典使用sorted排序

dic = {1:'a',3:'c',2:'b'}
print(sorted(dic))   # 字典排序返回的就是排序后的key
 
结果:
[1,2,3]




和函数组合使用

# 定义一个列表,然后根据一元素的长度排序
lst = ['天龙八部','西游记','红楼梦','三国演义']
 
# 计算字符串的长度
def func(s):
    return len(s)
print(sorted(lst,key=func))
 
# 结果:
# ['西游记', '红楼梦', '天龙八部', '三国演义']


和lambda组合使用

lst = ['天龙八部','西游记','红楼梦','三国演义']
 
print(sorted(lst,key=lambda s:len(s)))
 
结果:
['西游记', '红楼梦', '天龙八部', '三国演义']
 
lst = [{'id':1,'name':'alex','age':18},
    {'id':2,'name':'wusir','age':17},
    {'id':3,'name':'taibai','age':16},]
 
# 按照年龄对学生信息进行排序
 
print(sorted(lst,key=lambda e:e['age']))
 
结果:
[{'id': 3, 'name': 'taibai', 'age': 16}, {'id': 2, 'name': 'wusir', 'age': 17}, {'id': 1, 'name': 'alex', 'age': 18}]
posted @ 2019-07-20 17:04  why72  阅读(91)  评论(0编辑  收藏  举报