设为首页 加入收藏

TOP

Python之路【第四篇】:Python基础之函数(四)
2019-08-15 00:10:20 】 浏览:481
Tags:Python 之路 四篇 :Python 基础 函数
= 'simon' def change_name(x): return name+'_sb' res = change_name(name) print(res) #lambda方式表达: name='simon' func = lambda x:x+'_sb' print(func(name)) 输出结果: C:\Python35\python3.exe G:/python_s3/day16/匿名函数.py simon_sb simon_sb

 匿名函数补充:

f = lambda x,y,z:(x+1,y+1,z+1)
print(f(1,2,3)) 输出结果为: C:\Python35\python3.exe G:/python_s3/day16/匿名函数.py (2, 3, 4)

七、函数式编程

11 高阶函数

满足俩个特性任意一个即为高阶函数

1、函数的传入参数是一个函数名

2、函数的返回值是一个函数名

例一:不可变:不用变量保存状态,不修改变量

#非函数式
a = 1
def incr_test1():
    global a
    a+=1
    return a
incr_test1()
print(a)
输出结果:
C:\Python35\python3.exe G:/python_s3/day16/匿名函数.py
2

#函数式
n=1
def incr_test2(n):
    return n+1
print(incr_test2(2))
print (n)

输出结果:
C:\Python35\python3.exe G:/python_s3/day16/匿名函数.py
3
1
map函数
filter函数
reduce函数

 简单小结:

小结

八、内置函数

#空,None,0的布尔值为False,其余都为True
print(bool(''))
print(bool(None)) print(bool(0)) C:\Python35\python3.exe G:/python_s3/day16/内置函数.py False False False #bytes()函数,转换成二进制 name='你好' print(bytes(name,encoding='utf-8')) print(bytes(name,encoding='utf-8').decode('utf-8')) #decode是将前面处理的编码再解码,还原成原来 print(bytes(name,encoding='gbk')) print(bytes(name,encoding='gbk').decode('gbk')) print(bytes(name,encoding='ascii')) #ascii不能编码中文 C:\Python35\python3.exe G:/python_s3/day16/内置函数.py b'\xe4\xbd\xa0\xe5\xa5\xbd' 你好 b'\xc4\xe3\xba\xc3' 你好

 

View Code

 max函数小结:

1、max函数处理的是可迭代对象,相当于一个for循环取出每个元素进行比较,注意,不同类型之间不能进行比较
2、每个元素间进行比较,是从每个元素的第一个位置依次比较,如果这一个位置分出大小,后面的都不需要比较了,直接得出这俩元素的大小

 

#空,None,0的布尔值为False,其余都为True
# print(bool(''))
# print(bool(None))
# print(bool(0))

# #bytes()函数,转换成二进制
# name='你好'
# print(bytes(name,encoding='utf-8'))
# print(bytes(name,encoding='utf-8').decode('utf-8')) #decode是将前面处理的编码再解码,还原成原来
# print(bytes(name,encoding='gbk'))
# print(bytes(name,encoding='gbk').decode('gbk'))
#
# print(bytes(name,encoding='ascii')) #ascii不能编码中文

#chr()函数
# print(chr(97))
# print(dir(dict))
# print(divmod(10,36))
# dic ={'name':'alex'}
# print(dic)
# #可hash的数据类型即不可变类型,不可hash的类型即可变数据类型
# name='simon'
# print(hash(name))

# print(help(all))
#
# print(bin(10)) #10进制->2进制
# print(hex(12))
# print(oct(12)) #10进制转8进制
#
# print(isinstance(1,int))

# l=[1,3,100,-1,-2,4]
# print(max(l))
# print(min(l))

#zip()函数,相当于拉链的作用
# print(list(zip(('a','b','c'),(1,2,3))))
# print(list(zip(('a','b','c'),(1,2,3))))
# print(list(zip(('a','b','c','d'),(1,2,3))))
#
# p={'name':'alex','age':18,'gender':'none'}
# print(list(zip(p.keys(),p.values()))) #不加list,只会输出内存地址
# # print(list(p.keys()))
# # print(list(p.values()))
#
# print(list(zip('hello','12345'))) #zip方法里传两个参数,都是序列类型(列表,元祖,字符串)

# l=[1,3,100,-1,-2,4]
# print(max(l))
# print(min(l))

people=[ {'name':'alex','age':1000}, {'name':'wupeiqi','age':10000}, {'name':'yuanhao','age':9000}, {'name':'simon','age':18}, ] print('-------->',max(people,key=lambda dic:dic['age'])) # age_dic={'age1':18,'age4':20,'age3':100,'age2':30} # print(max(age_dic.values())) # print((max(age_dic.keys()),max(age_dic.values())))  age_dic={'alex_age':18,'wupeiqi_age':20,'zsc_age':100,'lhf_age':30} # print(max(age_dic.va
首页 上一页 1 2 3 4 5 下一页 尾页 4/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Ruby数组(2):数组方法详细整理 下一篇python 3.x 用户登录重设密码

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目