之前遇到一个场景是这样的:我在自己的电脑上需要用mongodb图形客户端,但是mongodb的服务器地址没有对外网开放,只能通过先登录主机A,然后再从A连接mongodb服务器B。本来想通过ssh端口转发的,但是我没有从机器A连接ssh到B的权限。于是就自己用python写一个。原理很简单。1.开一个socketserver监听连接请求2.每接受一个客户端的连接请求,就往要转发的地址建一条连接请求。即client->proxy->forward。proxy
系统 2019-09-27 17:50:32 2264
目录1.单表查询2.多表查询1.单表查询单表查询语法:selectdistinct字段1,字段2...from表名where条件groupbyfieldhaving筛选orderbyfieldlimit限制条数关键字执行的优先级:fromwheregroupbyselectdistincthavingorderbylimit1.1简单查询1.select语句:select*from表;select字段,字段..from表;selectdistinct字段,
系统 2019-09-27 17:49:27 2264
本文从参考了网络上的许多内容,主要为分布式进程及其的评论内容。所谓分布式运算,既可以指在同一台机器上利用多进程(线程)进行运算,又可以指将计算任务进行分解,利用多台机器进行运算。本文中的分布式单指最后一种。python的标准库multiprocessing中存在一个managers的子模块,该模块支持将多进程分布到多台机器上。选择一个进程来调度任务,其他进程进行计算,从而实现分布式运算。而调度进程和计算进程之间的通信,是通过网络来进行的,用到了python
系统 2019-09-27 17:49:22 2264
在Python中也可以像gcc/gdb那样调试程序,只要在运行Python程序时引入pdb模块(假设要调试的程序名为d.py):复制代码代码如下:$vid.py#!/usr/bin/pythondefmain():i,sum=1,0foriinxrange(100):sum=sum+iprintsumif__name__=='__main__':main()$python-mpdbd.py运行上面的命令后进入以下界面,可以输入类似gdb的命令来改变程序的执
系统 2019-09-27 17:48:42 2264
前不久,我写了一篇文章回顾Python中print的发展历史,提到了两条发展线索:明线:早期的print语句带有C和Shell的影子,是个应用程序级的statement,在最初十几年里,经历过PEP-214和PEP-259的改进;再到2009年的大版本3.0,由语句改成了print()函数,还在3.3版本,做过一次功能增强,最终上升成为一等的内置函数。暗线:介绍了print的竞争对手们,像传统的日志模块logging、调试模块pdb、主流IDE的调试功能,
系统 2019-09-27 17:48:34 2264
变量命名在《初识永远强大的函数》一文中,有一节专门讨论“取名字的学问”,就是有关变量名称的问题,本温故而知新的原则,这里要复习:名称格式:(下划线或者字母)+(任意数目的字母,数字或下划线)注意:1.区分大小写2.禁止使用保留字3.遵守通常习惯•以单一下划线开头的变量名(_X)不会被frommoduleimport*语句导入的。•前后有下划线的变量名(X)是系统定义的变量名,对解释器有特殊意义。•以两个下划线开头,但结尾没有两个下划线的变量名(__X)是类
系统 2019-09-27 17:47:41 2264
字典是python里面唯一的映射类型,由一个个键值对组成。字典的创建字典的查询字典的删除字典的修改or添加字典的内置方法(BIF)字典的特性通讯录练习一、创建字典(two)使用{}创建使用dict()函数demo>>>dict1={'one':1,'two':2,'three':3}>>>dict2=dict(one=1,two=2,three=3)>>>print(dict1['one'])>>>print(dict2["one"])11上面的demo中
系统 2019-09-27 17:46:28 2264
pythonmac安装mysqlclient报错如下解决办法解决办法在python3中,django使用mysql时需要安装maysql驱动,django2.2中pymysql最高版本不够高,这里使用mysqlclient,但安装过程报错,这里记录一下。pipinstallmysqlclient但是报错Usingcachedhttps://files.pythonhosted.org/packages/f4/f1/3bb6f64ca7a429729413e
系统 2019-09-27 17:46:07 2264
在工作中遇到了这样的情况,项目中需要连接IBM的关系型数据库(DB2),关于这方面的库比较稀少,其中ibm_db是比较好用的一个库,网上也有教程,但是好像不准确,也不太详细,错误百出,没办法只能拿到后自己分析源码,总算搞定。安装环境需求:首先是数据库DB2,下载连接直接百度,我下载是这两个文件:只下载箭头所指即可,我还没在linux上做测试。数据库API(这个东西找了好久,终于找到了合适的)(找不到搜:SQLAPI.zip)Python2.7VCForPy
系统 2019-09-27 17:38:38 2264
前言ctypes是Python的外部函数库。它提供了C兼容的数据类型,并且允许调用动态链接库/共享库中的函数。它可以将这些库包装起来给Python使用。这个引入C语言的接口可以帮助我们做很多事情,比如需要调用C代码的来提高性能的一些小型问题。通过它你可以接入Windows系统上的kernel32.dll和msvcrt.dll动态链接库,以及Linux系统上的libc.so.6库。当然你也可以使用自己的编译好的共享库我们先来看一个简单的例子我们使用Pytho
系统 2019-09-27 17:38:21 2264