1 Python中一切皆对象
2 魔法函数
3 类和对象
4 自定义序列类
5 set和dict
6 对象引用,可变性,垃圾回收
7 元类
8 迭代器,生成器
9 socket
10 多线程,多进程,线程池
11 协程,异步
12 asyncio
- Python中一切皆对象
1.1 类是对象,函数也是对象
权限有:赋值,添加到集合变量,作为参数传递给函数,用作函数返回值
*******************************************************
def F(name):
print(name)
my_name = F
my_name('harper')
>> harper
*******************************************************
class student:
def __init__(self):
print('harper')
my_name = student
my_name()
>> harper
*******************************************************
def F():
print("harper")
class student:
def __init__(self):
print('harper1')
a_list =[]
a_list.append(F)
a_list.append(student)
for i in a_list:
print(i())
>> harper
>> None
>> harper1
>> <__main__.student object at 0x10f5bd860>
1.2 type object class的关系
*******************************************************
x=1
print(type(x))
>> <class 'int'>
*******************************************************
print(type(int))
>> <class 'type'>
*******************************************************
class student():
pass
print(type(student))
>> <class 'type'>
*******************************************************
1.2.1 type是用来生成类的,object是所有类都要继承的一个顶层基础类
print(student.__bases__)
>> (<class 'object'>,)
class My(student): #继承student类
pass
print(My.__bases__)
>> (<class '__main__.student'>,)
*******************************************************
1.2.2 type是一个类,也是一个对象
print(type.__bases__)
>> (<class 'object'>,)
print(type(object))
>> <class 'type'>
print(object.__bases__)
>> ()
print(type(type))
>> <class 'type'>
内部是通过指针来实现的
1.3 内置类型和内置函数
类型有:对象,None(全局只有一个),数值,迭代类型,序列类型,映射,集合,上下文管理类型,其他。
1.3.1 对象三个特征:身份,类型,值。
a =1
print(id(a))
>> 4504054448
1.3.2 None 全局只有一个
a = None
b = None
print(id(a),id(b))
>> 4391569960 4391569960
这个例子好像并不能说明问题
c =1
a = c
b = c
print(id(a),id(b))
>> 4321028784 4321028784
先记住吧,此处留疑问?
1.3.3 数值类型 int float complex(复数) bool
1.3.4 迭代类型 先不展开
1.3.5 序列类型 list bytes bytearray memoryview(二进制序列)
range tuple str array
1.3.6 映射类型:dict 有 key map
1.3.7 集合类型 set frozenset
1.3.8 上下文管理类型 with语句
1.3.9 其他:模块类型,class和实例,函数类型,方法类型,代码类型,object类型,type类型,ellipsis类型(省略号),notimplemented类对象
1.4内置函数
abs() 返回绝对值
all()
any()
basestring()
bin() 返回一个整数 int 或者长整数 long int 的二进制表示
bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False。
bytearray() 方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。
callable() 函数用于检查一个对象是否是可调用的。
chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。
更多内置函数信息:
http://www.runoob.com/python3/python3-built-in-functions.html
想初步了解python:
http://www.runoob.com/python3/python3-tutorial.html