py2,py3区别 ,基础网络常识,多线程,
1.编译型:把代码编译成机器码,计算机找虚拟机执行代码,机器码交给计算技巧去运行
:C语言,java c#
解释型:边解释边执行
5.只有列表才能reverse 字符串需要索引[::-1]
6.py2/py3
py2:print"xx"
py3:print(123)
py2:经典类 新式类 2.2以后
py3:新式类(object)
数据类型:py2:有两种数据类型 unicode v=u"root"本质上unicode存储
(str/ bytes ) 如 v="root"在py2是由字节存储的
py3:str v="root" 本质上unicode存储
bytes v=b"root" 本质上是字节存储
编码:py2 默认使用ascii
文件头可修改#-*- encoding:uif-8(可以随意改编码) -*-
py3 默认使用utf-8
文件头可修改#-*- encoding:uif-8(可以随意改编码) -*- 输入:py2: v1=raw_input("请输入用户")
py3:v1=input("请输入用户")
范围
py2:range/xrange
py3:range
2.多线程 是通过 模块 threading 来实现的
import threading
import time
def func(a,b,c):
time.sleep(11)
print("吃冰淇淋")
def play():
print("玩守望先锋")
def sleep():
print("睡觉")
t1=threading.Thread(target=func,args=(1,2,3))
t1.start()
t2=threading.Thread(target=play())
t2.start()
t1=threading.Thread(target=sleep())
t1.start()
print("我是")
print("一课")
print("小喵咪")
主要是理解sockerserver 为什么可以使用多线程,是因为里面都有thread模块
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
import threading
import time
def func(name):
print("开始执行任务: %s"% name)
time.sleep(10)
print("...")
print("完成任务%s"% name) while 1:
name=input("请输入名字")
t1=threading.Thread(target=func,args=(1,))#这里需要添加数字还是参数
#都可以,不过需要在args=后面加入括号和后面的逗号
t1.start()
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
与sock的具体实现 主要来说明可以使用多线程在网络编程可以加快速度 具体是在sockerserver 模块里
所以主要是理解
import threading
import socket
import time
def func(conn):
print("准备中>>>")
data=conn.recv(1024).decode('utf8')
print(data)
conn.close()#可以吧服务器关闭
surver=socket.socket()
surver.bind(("192.168.13.92",8000))
surver.listen(10)
while 1:
conn,addr=surver.accept()#这里位置需要放置条件
t1=threading.Thread(target=func,args=(conn,))
t1.start()
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
最后附上标准sockerserver
import socketserver
class MYserver(socketserver.BaseRequestHandler):
def handle(self):
pass server=socketserver.ThreadingTCPServer(("192.168.13.92",8000),MYserver)
server.serve_forever()
py2,py3区别 ,基础网络常识,多线程,的更多相关文章
- Java并发指南1:并发基础与Java多线程
本文转载自互联网,侵删 什么是并发 在过去单CPU时代,单任务在一个时间点只能执行单一程序.之后发展到多任务阶段,计算机能在同一时间点并行执行多任务或多进程.虽然并不是真正意义上的“同一时间点”,而是 ...
- python 基础网络编程1
python 基础网络编程1 Source code: Lib/socketserver.py lib的主目录下有一个sockserver.py文件, 里面是python基本的网络编程模型 共有一个b ...
- openstack(liberty):部署实验平台(一,基础网络环境搭建)
openstack项目的研究,到今天,算是要进入真实环境了,要部署实验平台了.不再用devstack了.也就是说,要独立controller,compute,storage和network了.要做这个 ...
- Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步
Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步 一.概述 PV操作是对信号量进行的操作. 进程同步是指在并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消 ...
- iOS开发网络篇—多线程断点下载
iOS开发网络篇—多线程断点下载 说明:本文介绍多线程断点下载.项目中使用了苹果自带的类,实现了同时开启多条线程下载一个较大的文件.因为实现过程较为复杂,所以下面贴出完整的代码. 实现思路:下载开始, ...
- OLAP和OLTP的区别(基础知识) 【转】
联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则.OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 ( ...
- java基础-网络编程(Socket)技术选型入门之NIO技术
java基础-网络编程(Socket)技术选型入门之NIO技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.传统的网络编程 1>.编写socket通信的MyServer ...
- Java基础知识常识总结
Java基础知识常识总结 1.面向对象的特征以及对他的理解? 封装,继承,多态,如果再增加一条就是抽象. 2.Object有几种方法,分别是什么? 在JDK1.5中的11种方法,分别有: toStri ...
- Linux学习笔记(9)linux网络管理与配置之一——Linux基础网络命令与学习大纲(0)
大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配置DNS客户端 4.配置名称解析顺序 5.配置路由与默认网关 6.双网卡绑定 [1] ping [2]net ...
随机推荐
- pycharm 设置django server
- [C2W2] Improving Deep Neural Networks : Optimization algorithms
第二周:优化算法(Optimization algorithms) Mini-batch 梯度下降(Mini-batch gradient descent) 本周将学习优化算法,这能让你的神经网络运行 ...
- SpringBoot 全局异常配置
在日常web开发中发生了异常,往往是需要通过一个统一的异常处理来保证客户端能够收到友好的提示. 一.默认异常机制 默认异常处理(SpringBoot 默认提供了两种机制,一种是针对于web浏览器访问的 ...
- SpringMVC环境搭建(二)
一.基于XML 1. 创建Maven Project,选择war,修改pom.xml SpringMVC是依赖于Spring的,需要导入核心包. <properties> <!-- ...
- 《滴滴自研分布式 NoSQL 数据库 Fusion 的演进之路》
SSD:采用闪存: 读的速度很快:写入数据时,因为需要通过加压的方式对存储单元进行电子填充,所以速度略慢:擦除速度最慢,擦除块的时间在ms级.在使用SSD的时,需要考虑到SSD的读写不平衡的特性. 滴 ...
- wafer2的几个简单示例
如何快速新建路由 服务端 Demo 采用 Koa.js 框架编写,腾讯云基于 Koa 对上层进行一个简单的封装,方便你快速的添加新建路由 只需要在 controllers 目录下新建一个文件,例如为 ...
- 游戏引擎架构 (Jason Gregory 著)
第一部分 基础 第1章 导论 (已看) 第2章 专业工具 (已看) 第3章 游戏软件工程基础 (已看) 第4章 游戏所需的三维数学 (已看) 第二部分 低阶引擎系统 第5章 游戏支持系统 (已看) 第 ...
- PHP自动加载-spl_autoload_register
spl_autoload_register 自动加载spl : Standard PHP library (标准PHP库) 首先来了解 __autoload print.class.php <? ...
- pixijs shader教程
pixijs 写shader 底层都封装好了 只要改改片段着色器就行了 pxijs一定刚要设置支持透明 不然 颜色不支持透明度了 const app = new PIXI.Application({ ...
- 现代WEB前端的性能优化
现代WEB前端的性能优化 前言:这只是一份学习笔记. 什么是WEB前端 潜在的优化点: DNS是否可以通过缓存减少DNS查询时间? 网络请求的过程走最近的网络环境? 相同的静态资源是否可以缓存? 能否 ...