python第十天

本文深入探讨了 Python 中的 socket 编程,并通过具体示例介绍了 Python 的作用域规则。此外,文章还分享了作者对 OpenStack 的初步了解及兴趣所在,计划进一步探索云技术。

不知不觉已经第十天学习了啊,目测还差上一个礼拜也就是开始学习python两个月了,估计写不到第十一篇了暂时,因为这两天在研究openstack,感觉特别好,写完这个去写一篇关于云的,其实这才是今天突然写博客的主要目的~~~

这一篇还是主要关于socket编程的,再对Python2.7版本的继承方式了解一下,还有作用域

1.作用域:

 1 #!/usr/bin/env python
 2 if 1 == 1:                                #python无块级作用域
 3     name = 'ace'
 4 print(name)
 5 
 6 for i in range(10):
 7     name = i
 8 print(name)
 9 
10 
11 def func():                                 #python以函数作为作用域
12     name = 'mmm'
13 func()
14 print(name)
15 
16 li = [lambda :x for x in range(100)]
17 r = li[0]()
18 print(r)
1 C:\Users\Administrator\AppData\Local\Programs\Python\Python35\python.exe C:/Users/Administrator/PycharmProjects/ACE/study10/s1.py
2 ace
3 9
4 9
5 99
6 
7 Process finished with exit code 0

2.socket源码结构:我画图实在是惨不忍睹,直接复制别人的吧....武sir的,弄大点,眼神不好使....这一段全是复制的了,很明显不是我写博客的中二风格(http://www.cnblogs.com/wupeiqi/articles/5040823.html)

 

内部调用流程为:

  • 启动服务端程序
  • 执行 TCPServer.__init__ 方法,创建服务端Socket对象并绑定 IP 和 端口
  • 执行 BaseServer.__init__ 方法,将自定义的继承自SocketServer.BaseRequestHandler 的类 MyRequestHandle赋值给self.RequestHandlerClass
  • 执行 BaseServer.server_forever 方法,While 循环一直监听是否有客户端请求到达 ...
  • 当客户端连接到达服务器
  • 执行 ThreadingMixIn.process_request 方法,创建一个 “线程” 用来处理请求
  • 执行 ThreadingMixIn.process_request_thread 方法
  • 执行 BaseServer.finish_request 方法,执行 self.RequestHandlerClass()  即:执行 自定义 MyRequestHandler 的构造方法(自动调用基类BaseRequestHandler的构造方法,在该构造方法中又会调用 MyRequestHandler的handle方法)

 

ps:需要注意的就是pycharm不是万能的....

 

 

 

3.进程线程,下篇跟协程一起再写吧,不然乱了

4.python2.7的继承关系

默认一条道走到黑,如下图

但是当继承object类后就会与3.5一个风格,3.5的所有类已经默认全部继承了object类,唯一的区别,我没2.7的版本,代码不写了,but

转载于:https://www.cnblogs.com/bfmq/p/5886935.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值