Python-内置函数

abs()---求绝对值

print(abs(-1))

all()---后面接可迭代对象,可迭代对象里面出来的每一个值,它的bool值都是true。all的结果才是true。其中None、0、空的bool值为0。

def all(*args, **kwargs): # real signature unknown
    """
    Return True if bool(x) is True for all values x in the iterable.
    
    If the iterable is empty, return True.
    """
    pass
command+左键函数
print(all([1,'a',[]]))
print(all([]))

False
True

# 列表属于可迭代对象

any()---但凡里面有一个为真,结果就为真

print(any([0,None,'']))
print(any([0,None,'',1]))
print(any([])) #False

False
True
False

进制转换

print(bin(10))  #十进制转二进制
print(oct(10))  #十进制转八进制
print(hex(10))  #十进制转十六进制

0b1010
0o12
0xa

bool()---布尔值为假:0,None,空

bytes()

print('hello'.encode('utf-8'))
print(bytes('hello',encoding='utf-8'))

b'hello'
b'hello'

callable()---判断是不是可被调用的

print(callable(max))

True

chr()---根据ASCII表将数字转成字符

ord()---与上面相反

print(chr(65))
print(chr(66))
print(chr(67))
print(chr(90))
print(ord('A'))

A
B
C
Z
65

complex()---复数

x=1-2j #x=complex(1-2j)
print(type(x))
print(x.real)
print(x.imag)

<class 'complex'>
1.0
-2.0

数据类型:

dict,int,list,tuple,str,float,set,frozenset
s=set({1,2,3}) #可变集合,但集合内部的元素是不可变类型
s后面有.add操作
s=frozenset({1,2,3}) #不可变集合
s后面没有有.add操作

dir()---查看一个模块都有哪些属性

import time
# print(dir(time))

# time.   这个.是属性引用的意思
# dir能告诉我们time能调出哪些属性

divmod---求商和余数

print(divmod(1001,25))

(40, 1)

这个功能将来可以做,分页显示。

enumerate()---列出列表中的值与索引

l=['a','b','c','d']
for i in l:
    print(i,l.index(i))

# 更简洁方法:
l=['a','b','c','d']
for x in enumerate(l):    #enumerate(l)就是一个迭代器
    print(x)

结果如下:

a 0
b 1
c 2
d 3

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
  • global  n    声明一个全局变量,它是一个关键字
  • globals---查看全局作用于的名字

hash---校验文本,得到一个hash值

print(hash('asdfasdfasdfasdfasdf'))
print(hash(' asdfasdfasdfasdfasdf'))

1828447031314450141
-5912355737780512772

确保下载的文件与源文件是一致的。

help---查看函数的注释信息

def func():
    '''
    xxxxxx
    :return:
    '''
    pass

print(help(func))

id()---不是真实的内存地址,只是python的一种实现方式,反应它在内存里面的大概位置。

isinstance()---判断数据类型

print(isinstance(1,int))
print(type(1) is int)

iter()---将一个可迭代对象变成一个迭代器对象

pow()---2次方

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

1

reversed()---倒置序列

l=[1,4,2,9]
print(list(reversed(l)))

round()---保留小数

print(round(10.55545,3))

10.555

slice()---切片对象,可重复利用

l1=['a','b','c','d','e']
l2=['a','b','c','d','e']

# print(l1[1:5:2]) #'b','d'
# print(l2[1:5:2]) #'b','d'

obj=slice(1,5,2)
print(l1[obj])
print(l2[obj])

# 结果
['b', 'd']
['b', 'd']

sum()---求和,除了数字列表,也支持可迭代对象

print(sum([1,2,3,4]))
print(sum(range(10)))

vars()---无参时用于查看局部作用于名字

不加参数vars()=locals()     加参数vars(obj)=obj.__dict__ 

print(vars())
print(locals())
print(vars() is locals())
# vars(obj) 等同于obj.__dict__

x=111111111111111111111111111111111111111
print(locals())

名称空间存的是,x与某个值的绑定关系

__import__()---通过字符串导入模块

import time
print(time.sleep(3))

m=input('>>: ')
print(type(m))
#输入time

m=__import__('time')
print(m.sleep(3))

print(m)
print(time)
#两者一样!

m=input('>>: ')
obj=__import__(m)
obj.sleep(3)
print(obj.sleep(3))

import "time" #import 不能导入字符串

以下两个作为了解,不用!

eval()---提取字符串内的表达式并执行,然后返回执行结果

s1="1+2+3"
print(eval(s1))

s1="['a','b','c']"
l=eval(s1)
print(type(l))

6
<class 'list'>
s2="for i in range(10):print(i)"  #s2里面是执行语句,没有结果。所以该结果报语法错误
eval(s2)

exec()---仅仅只是执行字符串内的表达式或语句,没有返回值

s1="1+2+3"
print(exec(s1))

None

s2="for i in range(10):print(i)"
exec(s2)

0
1
2
3
4
5
6
7
8
9
#优先掌握
max
min
sorted
map
from _functools import reduce
filter
sum
bool
chr
divmod
enumerate
id
input
print
isinstance
iter
len
open
pow
type
zip


#面向对象
object

classmethod
staticmethod
property

getattr
hasattr
setattr
delattr

super

isinstance
issubclass

object.__dict__

int,str,bytes,list,tuple,set,float,dict
优先掌握

 

posted @ 2017-10-18 14:46  大雄猫  阅读(306)  评论(0编辑  收藏  举报