#Author wangmengzhu
#定义一个函数与变量的定义非常相似,对于有名函数,必须通过变量名访问
def func(x,y,z = 1):
return x + y + z
#匿名函数:1.没有名字,2.函数体自带return
#匿名函数的应用场景,临时使用
lambda x,y,z = 1:x + y + z
print(lambda x,y,z = 1:x + y + z)
f = lambda x,y,z = 1:x + y + z
print(f)
f(1,2,3)
#内置函数
#1.abs()
print(all([1,2,'a',None]))#表示可迭代对象取出的每一个值的布尔值都为真
print(all([]))#可迭代对象为空的列表,表示为True
print(any([]))#表示为False
print(any([' ',None,False]))#表示为True
print(any(['',None,False]))#表示为False
#bin,oct,hex
print(bin(10))#十进制转二进制
print(oct(10))#十进制转八进制
print(hex(10))#十进制转十六进制
#bytes
#字符串本身就是unicode
#unicode------->encode------>bytes
print('hello'.encode('utf-8'))
print(bytes('hello',encoding = 'utf-8'))
#callable是否可以被调用
print(callable(bytes))#True
print(callable(abs))#True
#chr,ord
print(chr(65))#A
print(chr(35))#表示的是#
print(ord('#'))#表示的是35
s1 = frozenset({1,2,3,4})#表示的是不可变集合
import sys
sys.path ##path表示来自于sys名称空间的名字
print(dir(sys))#查看sys有哪些属性
#divmod
print(divmod(10,3))#结果表示的是除数和商
#enumerate
l = ['a','b','c']
res = enumerate(l)
for index,item in res:
print(index,item)
#hash(),表示的是检验一段字符串,会得到hash值
#help()查看帮助信息
print(help())#在函数中写注释信息,可通过help查看
#id:是python解释器实现的功能,并不是真实的内存地址
#isinstance
x = 1
print(isinstance(x,int))#判断x是否是int的一个实例
#pow
print(pow(10,2))#表示的是10**2
print(pow(3,2,2))#表示的是3**2%2
#repr:将对象转成字符串
print(type(repr(1)))#解释器内部调用
#reversed
l = [1,'a',2,'c']
print(reversed(l))
#round
print(round(3.567,2))#表示的保留两位小数
#slice
l = [1,2,3,4,5,6]
print(l[0:4:2])
s = slice(0,4,2)
print(l[s])#可以给多个对象使用
#sorted
l = [1,10,4,3,-1]
print(sorted(l,reverse = True))
#zip:拉链(找两个一一对应的部分)
s = 'hello'
l = [1,2,3,4,5]
print(zip(s,l))
res = zip(s,l)#为迭代器
print(list(res))
#__import__
import sys
m_name = input('module>>: ')
if m_name == 'sys':
m = __import__(m_name)
print(m)
print(m.path)