Python笔记10~内置函数

#coding:utf-8

#Python内置函数
#和数字计算相关的内置函数
print(abs(-9))              #求绝对值
#输出 9

print(max(23,5,4,67,89))     #输出最大值
#输出89
print(max('r','yu','m'))     #max也可以传入字符
#输出yu
print(max([2,4,34,9,78,5]))  #max也可以传列表
#输出78
print(max((2,4,34,9,78,5)))  #max也可以传Tuple元组
#输出78


print(sum([2,4,3]))  #传入可迭代对象,传入list
#输出9
print(sum((2,4,3)))  #传入可迭代对象,传入元组
#输出9


print(len((2,3,4,5)))
#输出4
print(len({'name':'ben','age':22}))
#输出2


print(2**3)         #2的3次方
#输出8
print(pow(2,3))     #2的3次方 ,执行效率比上面的低
#输出8
print(pow(2,3,5))   #(2**3)%5, 幂次方的对某个数的余数
#输出 3



print(range(9))
#输出 [0, 1, 2, 3, 4, 5, 6, 7, 8]


print(divmod(8,2))  # divmod 8/4 得到的结果 (商,余数)
#输出  (4, 0)   #(商,余数)

print(round(3.1415926))
#输出 3.0
print(round(-2.11))
#输出 -2.0



#类型转换的内置函数
#复数(a+bj)  #实部a 虚部j

print(int(3.140))  #int-->整数
#输出 3
print(int('231'))
#输出 231

#print(int('a'))   #错误
#print(int('abc')) #错误


print(float(2))  #浮点数
#输出 2.0

print(complex(2,3))
#输出(2+3j)

print(type(str(123)))
#输出 <type 'str'>

print(list(range(0,3)))
#输出(0, 1, 2)
print(tuple(range(3)))
#输出(0, 1, 2)
print(dict(name='ben',age=12))
#输出{'age': 12, 'name': 'ben'}


#单个字符和整数之间的转换
print(ord('a'))
#输出 97
print(chr(97))
#输出 a



print(bool(8))
#输出True
print(bool(0))
#输出False
print(bool({}))
#输出False
print(bool(''))
#输出False
print(bool(' '))
#输出True

print(True+2)
#输出  3



#callable函数 参数是否能够调用
print(callable(123))
#输出 False

def func():
    pass
print(callable(func))
#输出 True



#slice 函数,切片
print((23,45,32)[slice(0,1)])
#输出 (23,)
print([23,45,32][slice(0,1)])
#输出 [23]
print(('1234')[slice(0,2)])
#输出  12
print(list(range(16)[slice(1,12,2)]))
#输出    [1, 3, 5, 7, 9, 11]





#进制转换
#十进制数据  0-9
#二进制数据  0,1
#八进制数据  0-7
#十六进制数据  0-9 ,A,B

print(oct(20))  #十进制--->八进制
#输出 024
print(bin(20)) #十进制--->二进制
#输出    0b10100
print(hex(20))  #十进制--->十六进制
#输出 0x14




#序列操作
print(all(['2','23']))
#输出 True
print(all((False,True,'ben',1)))
#输出 False

print(any((0,2)))
#输出 True


#sort函数 ,sorted函数
#反转函数
print(list(reversed((1,2,3,4))))
#输出 [4, 3, 2, 1]



#面向对象编程
class MyClass():
    def run(selfs):
        print('开始跑步')
    def eat(self):
        print('开始吃饭')
    def dog_fun(self):
        print('小狗跑了')
t=MyClass()
print(hasattr(t,'run'))    #MyClass里面是否有run方法
#输出 True
print(hasattr(t,'name'))
#输出 False

print(getattr(t,'run'))   #获取
#输出 <bound method MyClass.run of <__main__.MyClass instance at 0x10df5d638>>
func=getattr(t,'run')
func()
#输出 开始跑步
print(getattr(t,'namr','0')) #第三个参数,默认值(找不到方法的时候返回值)
#输出 0

setattr(t,'name','ben')
print(getattr(t,'name'))
#输出    ben



#类型判断
print(isinstance(12,int))
#输出 True
print(isinstance(MyClass,object))
#输出 True

#其他内置函数
print(type(str(1+3)))
#输出 <type 'str
print(str('1+3'))
#输出 1+3
print(repr('1+3'))  # repr面向解释器
#输出'1+3'
print(eval('1+3'))    #计算字符串表达式的值
#输出 4

print(__doc__)      #当前脚本文件的doc(文档及解释说明)
print(__file__)  #当前文档脚本的完整路径
import  os
print(os.__all__)
print(dir(os))
print(help(os))


#compile 函数  :字符串编译成字节代码
code=compile("print('ben')",'','exec')
eval(code)
#输出 ben

#第一个参数:字符串(指令)
#第二个参数:代码文件的名称,''(不是从文件获取)
#第三个参数:编译执行代码的方式

exec("print('ben')")
#输出 ben

#code=compile("open('code.py','a',encoding='utf-8').write('Angela')",'code.py','exec')
#exec(code)

#code=compile('3*4+5*6','','eval')
#print(code)

 

posted @ 2018-03-05 19:25  零度咖啡  阅读(128)  评论(0)    收藏  举报