A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 等待奇点 初级黑马   /  2018-6-25 10:42  /  1921 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

学至今日,回想这两个月的python学习成果,初感貌似东西不多,但转而细细回想,一些知识点的脉络出现头绪进而逐渐清晰,下面我就大致浅谈一下最近一段时间学习的总结吧,当然考虑到篇幅及时间的原因,这里只能做一下有节选的小结。
引用中分为不可变类型与可变类型,不可变类型是修改里面的数据内容,内存起始地址必定发生改变,包括数字类型,布尔值,字符串还有元组;而可变类型则是修改内容,内存起始地址不变,包括列表和字典。
函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个“别名”。
函数中实例属性和类属性的区别: 类属性对于每个类实例对象都有,可以通过类对象创建,而实例属性则是类属性中独具个性的属性,它们是相互独立互不干扰的,可通过类对象或实例对象创建。
模块导入时,每一个包目录下面都会有一个init.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。init.py可以是空文件,也可以有Python代码,因为init.py本身就是一个模块,而它的模块名就是包的名字。
装饰器decorator: 可以将原函数对象的指定属性复制给包装函数对象, 或者通过参数选择。以下的万能选择器在不修改源代码的情况下,给源代码添加新的功能,如下:
def set_fun(func):
    def call_fun(*args, **kwargs):
        print("添加额外的功能")
        return func(*args, **kwargs)
    return call_fun
@set_fun
def test(*args, **kwargs):
    print(args)
   print(kwargs)
    return 100
value = test(31, 63, a=312263)
print(value)
文件操作: read: 一次性读取整个文件。 readline: 读取一行,readlines: 读取整个文件到迭代器。用with打开文件的方式比较好,会自动关闭文件。读取非UTF-8编码的文本文件,需要给open()函数传入encoding参数。如果文本文件中可能混杂了一些非法的编码的字符,open()还可以接受一个errors参数,处理最简单的方法是忽略(ignore),即errors=’ignore’。

    多进程: (multiprocessing)  
Process: from multiprocessing import Process,proc = Process(target,args),proc.start(),proc.join()
1,分布式进程: multiprocessing.managers
2,注意: 在多进程中,同一个变量,各自有一份拷贝存在于每个进程中,互不影响;而多线程中,所有变量都由所有线程共享

进程池(Pool)
from multiprocessing import Pool
proc = Pool(4) ,proc.apply_async(target,args),proc.close(), proc.join(), close之后就不能添加新的process了。

多线程(threading)
Threading thread = threading.Tread(target,args,name),thread.start(),thread.join()
1,锁: lock = threading.Lock() ,eg:lock.acquire() ,try: something… finally: lock.release() 一定要释放锁。
2,获取现在线程的名字: threading.current_thread().name
3,在Tread和Process中,应该优先选Process。
协程:单线程的异步编程模型。
协程: 利用进程+协程可以很大的程度上利用多核的cpu。
python对协程的支持是通过generator实现的。
如果一个函数包含yield关键字,那这个函数就不是普通的函数了,而是一个generator。
注意: yield不但可以返回一个值,还可以接收调用者发出的参数。 先返回后接收调用者发出的参数。

12 个回复

正序浏览
加油
回复 使用道具 举报
加油~
回复 使用道具 举报
加油
回复 使用道具 举报
棒棒的
回复 使用道具 举报
加油加油,棒棒哒!
回复 使用道具 举报
回复 使用道具 举报
回复 使用道具 举报
奈斯
回复 使用道具 举报
回复 使用道具 举报
加油
回复 使用道具 举报
回复 使用道具 举报
专业,棒棒哒
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马