随笔分类 -  python_study

看视频学习,笔记以及注意事项,敲代码心得
摘要:一、物理层:物理链接用来发送电信号 物理层的作用相当于邮局在公路传输的部分二、数据链路层: 协议:ethernet 作用:分组电信号,在局域网中查找mac地址 概念:1.mac 2.广播 三、网络层:协议:ipv4作用:区分不同的子网,在整个网络中找到相应的计算机arp协议:1)相同的子网通过广播包 阅读全文
posted @ 2018-04-07 14:19 Alos403 阅读(263) 评论(0) 推荐(0)
摘要:内容:协程 作用:实现高并发,提高效率##################################################################yield支持下的协程协程是用户轻量级线程好处:1、没有线程切换2、无需原子操作锁定及同步开销3、高并发+高扩展+低成本:一个cp 阅读全文
posted @ 2018-04-06 21:48 Alos403 阅读(294) 评论(0) 推荐(0)
摘要:内容:进程通信1、Pipes;2、Queue,以及例子和练习 不同进程的通信有两种,1、是Pipes,2、是Queue ,一般不用Pipes##########################################1、Queue实现进程通信通过创建线程的时候传递数据 信息在Queue里面通 阅读全文
posted @ 2018-04-01 16:25 Alos403 阅读(258) 评论(0) 推荐(0)
摘要:内容:显示工具栏,设置主题、快捷键、开头文字、解释器 新增:pycharm添加下载模块 一些可能用到的设置,想起来就发上来。有需要的可以查看 ###############显示工具栏 ##############设置主题,我用的主题是这种比较暗的,不喜欢太亮的,比如那种基本都是白色的。 ###### 阅读全文
posted @ 2018-03-15 22:33 Alos403 阅读(690) 评论(0) 推荐(1)
摘要:内容:判断质数 持续更新 # __author: _nbloser # date: 2018/2/4 import math def is_prime(number): num_sqrt = int(math.sqrt(number)) for i in range(2, num_sqrt + 1) 阅读全文
posted @ 2018-03-14 23:26 Alos403 阅读(306) 评论(0) 推荐(0)
摘要:内容:通过修改hosts文件,让pycharm不能够联网验证激活码的方式。我在kali和win10都成功了 1、修改hosts文件 Windows文件位置:C:\Windows\System32\drivers\etc Linux和mac的hosts文件路径为:/etc 在文件末尾添加:0.0.0. 阅读全文
posted @ 2018-03-14 22:46 Alos403 阅读(12357) 评论(0) 推荐(0)
摘要:内容:进程创建(两种方法) #############################第一种创建方法:通过创建线程对象,参数设置进程执行的方法以及方法的参数 #############################第二种创建线程的方法:1、创建类继承Process类2、类里面覆盖run方法3、创建 阅读全文
posted @ 2018-03-13 15:25 Alos403 阅读(212) 评论(0) 推荐(0)
摘要:内容:队列类型、方法、使用 ###############queue定义了3种信息列队模式类Queue([maxsize]):FIFO列队模式LifoQueue([maxsize]):LIFO列队模式,栈模式#######方法q.qsize():返回列队大小q.full():如果列队满了返回True 阅读全文
posted @ 2018-03-12 16:47 Alos403 阅读(264) 评论(0) 推荐(0)
摘要:条件同步和条件变量同步差不多意思,只是少了锁功能,因为条件同步设计于不访问共享资源的条件环境,event=threading.Event():条件环境对象,初始值为False.event.isSet(): 返回event的状态值event.wait(): 如果event.isSet()==False 阅读全文
posted @ 2018-03-11 15:16 Alos403 阅读(238) 评论(0) 推荐(0)
摘要:也是锁,这个锁多加了wait(),notify()唤醒一个进程,notifyall()唤醒全部进程方法,创建的时候默认是Rlock类型的锁,可以设置为lock类型的,默认就ok 1 from random import randint 2 import threading 3 import time 阅读全文
posted @ 2018-03-10 14:53 Alos403 阅读(301) 评论(0) 推荐(0)
摘要:步骤:1、新建信号量对象,设置信号量数量2、线程执行方法中,如果能够获取信号量,则执行,信号量为0不可以获取 1 import threading,time 2 3 class MyThread(threading.Thread): 4 def run(self): 5 if sema.acquir 阅读全文
posted @ 2018-03-09 15:39 Alos403 阅读(263) 评论(0) 推荐(0)
摘要:##多线程资源共享使用问题 上面程序运行,num不会减到0。cpu执行了一个线程的tmp = num后,就切换到其他线程,有很多执行了tmp = num,所以所有线程的tmp大都是等于100的,执行num = tmp - 1的时候,num就可能等于99或者98之类的。解决办法,加锁步骤:1、新建锁2 阅读全文
posted @ 2018-03-07 19:34 Alos403 阅读(224) 评论(0) 推荐(0)
摘要:相比Java,python简单很多,一个例子就可以理解###########################有两种创建线程的方式,第一种是直接建立线程,把方法放进去,这是第一种:创建线程对象,参数设置要执行的方法以及方法的参数,然后执行start()方法,如下: 1 import threading 阅读全文
posted @ 2018-03-06 13:28 Alos403 阅读(454) 评论(0) 推荐(0)
摘要:1 import socketserver 2 3 class MyServer(socketserver.BaseRequestHandler): 4 def handle(self): # 里面是每个客户端连接执行的过程 5 print('服务器启动') 6 while True: 7 conn 阅读全文
posted @ 2018-03-05 10:47 Alos403 阅读(252) 评论(0) 推荐(0)
摘要:因为这个是简单的,所以很容易思想就是建立连接后,客户端发送文件名字和大小到服务端,服务端接受后,客户端开始发送文件,直到发完。具体的还是要看下面的代码,我自己实现了一遍 1 import socket 2 import os 3 4 def get_server_socket(): 5 sk = s 阅读全文
posted @ 2018-03-04 12:00 Alos403 阅读(251) 评论(0) 推荐(0)
摘要:在服务器执行命令之前好像缺了执行命令的模块,现在补上 以上部分文档来自:http://blog.csdn.net/wangzhaotongalex/article/details/48998299 ###远程执行命令例子: #指令执行结果短的,不会出现问题 1 import socket 2 imp 阅读全文
posted @ 2018-03-02 10:42 Alos403 阅读(295) 评论(0) 推荐(0)
摘要:server下的方法:bind() , listen(), accept(), recv(), send(bytes(String)), sendall(), client的方法:connect(), recv(), send(), sendall()### 建立通信的过程:创建socket,绑定i 阅读全文
posted @ 2018-01-29 09:25 Alos403 阅读(271) 评论(0) 推荐(0)
摘要:和 Java的好像有蛮多不同,让我感觉有点怪,可以确定的是上面的,不能实现单例模式,后面补上补:查了一下,发现好像不对,感觉有问题。找到的python2.*的单例不是这样的 python2.*类型改,但是会报错,这个错误我就不分析了,复杂 可能用最上面的就好了,我找时间去看一下其他的教程是怎么样的。 阅读全文
posted @ 2018-01-24 23:19 Alos403 阅读(260) 评论(0) 推荐(0)
摘要:###反射## getattr,hasattr,setattr,delattr,和类里面的字段有关,具体看例子 #1 class Person: def __init__(self,name,age): self.name = name self.age = age def show_lover(s 阅读全文
posted @ 2018-01-23 21:05 Alos403 阅读(242) 评论(0) 推荐(0)
摘要:###异常处理 eg1: 1 try: 2 inp = input('输入序号:') 3 num = int(inp) 4 except Exception as e: 5 print(e) 6 num = 1 7 8 print(num) eg2: 1 try: 2 li = [11,22] 3 阅读全文
posted @ 2018-01-22 16:40 Alos403 阅读(274) 评论(0) 推荐(0)