Python

python粘包问题及socket套接字编程详解

粘包问题TCP协议在传输过程中会出现数据粘包问题讲一下TCP和UDP的区别,都是传数据的协议,没有好坏之说,只是不同的应用需求可能会更好选择哪一个协议TCP:适合传输数量大,需要建立连接,会出现粘包问题,粘包问题可以解决,确定传入的长度,接收同样长度就可以保证一次性传输完UDP:适合传输数据量小,没有粘包,不需要连接,一次性传输,下一次就是新的数据,弊端就是数据丢失,不安全QQ是用什么协议呢?按理应该可以用UDP协议,但是实际用的是TCP协议,这是历史遗留

系统 2019-09-27 17:53:03 2061

Python

MongoDB--Python

MongoDB:非关系型数据库文件管理阶段:优点:可以长期保存存储大量数据使用简单缺点:数据一致性差数据大的时候,查找修改不便随着时间增长,冗余度大数据库管理阶段:优点:降低冗余度提高增删改查效率易扩展方便调用和自动化处理缺点:上手相对复杂数据:能够输入到计算机中,并被识别处理的信息集合数据结构:计算机存储、组织数据的方式;数据库:按照一定数据结构存储管理数据的仓库。在数据库管理系统管理和控制下,在一定介质上的数据集合数据库管理系统:管理数据库的软件,用于

系统 2019-09-27 17:52:59 2061

Python

Python3 queue队列模块详细介绍

queue介绍queue是python中的标准库,俗称队列。在python中,多个线程之间的数据是共享的,多个线程进行数据交换的时候,不能够保证数据的安全性和一致性,所以当多个线程需要进行数据交换的时候,队列就出现了,队列可以完美解决线程间的数据交换,保证线程间数据的安全性和一致性。注意:在python2.x中,模块名为Queuequeue模块有三种队列及构造函数Pythonqueue模块的FIFO队列先进先出。queue.Queue(maxsize)LI

系统 2019-09-27 17:52:43 2061

Python

教你入门python爬虫

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。“入门”是良好的动机,但是可能作用缓慢。如果你手里或者脑子里有一个项目,那么实践起来你会被目标驱动,而不会像学习模块一样慢慢学习。另外如果说知识体系里的每一个知识点是图里的点,依赖关系是边的话,那么这个图一定不是一个有向无环图。因为学习A的经验可以帮助你学习B。因此,你不需要学习怎么样“入门”,因为这样的“入门”点根本不存在!你需要学习的是怎么样做一个比较大的东西,在这个过程中,你会很快地

系统 2019-09-27 17:51:52 2061

Python

C++、python和go语言实现的简单客户端服务器代码示例

工作中用到了C/S模型,所做的也无非是给服务器发数据,但开发阶段会遇到程序自身的回环测试,需要用到简单的服务端以便验证数据发送的正确性。写软件用C++,跑测试用python,这段时间也刚好看go语言,所以都要有demo。以下三组程序实现的功能相同,这里一起做下总结。一、C++实现Boost.Asio是一个跨平台的C++库,它用现代C++方法为网络和底层I/O程序提供了一致的异步I/O模型。为了跨平台,我用boost库实现,具体如下。服务端代码:复制代码代码

系统 2019-09-27 17:51:43 2061

Python

Python 学习之路三

目录条件判断if循环for...in...whilebreakcontinue继"Python学习之路二":条件判断if比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现:>>>age=18>>>ifage>=18:print("yourageis",age)print("adult")yourageis18adult>>>根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也

系统 2019-09-27 17:51:22 2061

Python

Python中使用PDB库调试程序

Python自带的pdb库,发现用pdb来调试程序还是很方便的,当然了,什么远程调试,多线程之类,pdb是搞不定的。用pdb调试有多种方式可选:1.命令行启动目标程序,加上-m参数,这样调用myscript.py的话断点就是程序的执行第一行之前复制代码代码如下:python-mpdbmyscript.py2.在Python交互环境中启用调试复制代码代码如下:>>>importpdb>>>importmymodule>>>pdb.run(‘mymodule.

系统 2019-09-27 17:51:04 2061

Python

Python分割训练集和测试集的方法示例

数据集介绍使用数据集Wine,来自UCI。包括178条样本,13个特征。importpandasaspdimportnumpyasnpdf_wine=pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/wine/wine.data',header=None)df_wine.columns=['Classlabel','Alcohol','Malicacid','Ash

系统 2019-09-27 17:50:52 2061

Python

python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法

本文通过将同一个数据集在三种不同的简便项窗口部件中显示。三个窗口的数据得到实时的同步,数据和视图分离。当添加或删除数据行,三个不同的视图均保持同步。数据将保存在本地文件中,而非数据库。对于小型和临时性数据集来说,这些简便窗口部件非常有用,可以用在非单独数据集中-数据自身的显示,编辑和存储。所使用的数据集:/home/yrd/eric_workspace/chap14/ships_conv/ships.py#!/usr/bin/envpython3impor

系统 2019-09-27 17:49:43 2061

Python

Python中SOAP项目的介绍及其在web开发中的应用

SOAP.py客户机和服务器SOAP.py包含的是一些基本的东西。没有Web服务描述语言(WebServicesDescriptionLanguage,WSDL)或者任何其它附加的东西,只有用Python实现的SOAP客户机和服务器的透明支持。甚至这个包中的一个很好的功能也只是与基础架构相关:SOAP.py支持安全套接字层(SSL)用于加密的SOAP传输。为使用这个功能,您必须安装M2Crypto,M2Crypto是一个库,包含各种加密工具和格式,从RSA

系统 2019-09-27 17:49:38 2061

Python

python

环境spyder(python3.6)代码:fromflaskimportFlask,requestimportjsonimportsysdefaultencoding='utf-8'importloggingdeftt(name,age):result_str="%s今年%s岁"%(name,age)returnresult_strapp=Flask(__name__)@app.route("/test_1.0",methods=["GET"])defc

系统 2019-09-27 17:49:36 2061

Python

Python调用C

文章作者:Tyan博客:noahsnail.com|CSDN|1.引言众所周知,Python语言简单、易学、开源、具有丰富的库,Python的第一个编译器是用C语言实现的。但Python的缺点也非常明显,最让人诟病的就是Python的性能问题。因此,为了提高程序的运行效率,通常会将程序的关键部分使用C或C++重写,编译成动态链接库,然后在Python(CPython)中进行调用。运行环境:Ubuntu16.04、Python2.7、Python3.5。2.

系统 2019-09-27 17:49:18 2061

Python

这可能是最好玩的python GUI入门实例(推荐)

简单的说,GUI编程就是给程序加上图形化界面.python的脚本开发简单,有时候只需几行代码就能实现丰富的功能,而且python本身是跨平台的,所以深受程序员的喜爱.如果给程序加一个图形化界面,那么普通的用户也就能用上python的脚本,极大提升工作效率,所以给python程序加上图形化界面,把自己写的脚本,提供给普通用户,的确是一件激动人心的事!如何给python脚本加图形化界面?作者首先考虑了通过浏览器运行python的图形化界面,为了理想的效果,py

系统 2019-09-27 17:48:53 2061

Python

selenium+python环境配置教程详解

一、安装Python1)官网下载安装2)配置环境变量(未勾选自动配置需要手动配置)3)检查是否安装成功(交互窗口中输入Python-v)二、Selenium3.X+FireFox驱动+geckodriver1、安装selenium:1)W+r输入cmd,然后输入pipinstallselenium2)安装FireFox,添加附加组件seleniumIDE、FireBUG3)https://github.com/mozilla/geckodriver/rel

系统 2019-09-27 17:48:46 2061

Python

Python简单进程锁代码实例

先说说线程在多线程中,为了保证共享资源的正确性,我们常常会用到线程同步技术.将一些敏感操作变成原子操作,保证同一时刻多个线程中只有一个线程在执行这个原子操作。我最常用的是互斥锁,也称独占锁。其次还有读写锁,信号量,条件变量等。除此之外,我们在进程间通信时会用到信号,向某一个进程发送信号,该进程中设置信号处理函数,然后当该进程收到信号时,执行某些操作。其实在线程中,也可以接受信号,利用这种机制,我们也可以用来实现线程同步。更多信息见//www.jb51.ne

系统 2019-09-27 17:48:40 2061