又见一堆PYTHON高薪,前景好,年薪破百万,反正不会落到我们头上,看看就好(如果说python在这里下了广告,我是信得)CSDN这个狡猾小精灵,每年总要吹那么一种语言或技术,然后不到半年就忘光了,是的,半年后,只字不提记得去年是吹的人工智能,至于用什么语言,反正好像CSDN自己也没搞懂,我们这些博主也没搞懂,所以就随便粘贴国外大牛的文章宣传了半年其实有点见怪不怪其实最好的开源论坛不是CSDN某一种语言,基于最深入探讨的论坛也不是CSDN有点可悲的是,一般
系统 2019-09-27 17:53:00 1789
由于工作的需求,需要用python做一个类似网络爬虫的采集器。虽然Python的urllib模块提供更加方便简洁操作,但是涉及到一些底层的需求,如手动设定User-Agent,Referer等,所以选择了直接用socket进行设计。当然,这样的话,需要对HTTP协议比较熟悉,HTTP协议这里就不做讲解了。整个python的代码如下:#!/usr/binenvpythonimportsockethost="www.baidu.com"se=socket.so
系统 2019-09-27 17:52:30 1789
1.常用模块#连接数据库connect()函数创建一个新的数据库连接对话并返回一个新的连接实例对象PG_CONF_123={'user':'emma','port':123,'host':'192.168.1.123','password':'emma','database':'dbname'}conn=psycopg2.connect(**PG_CONF_123)#打开一个操作整个数据库的光标连接对象可以创建光标用来执行SQL语句cur=conn.cur
系统 2019-09-27 17:52:21 1789
程序说明:本程序实现将开发程序服务器中的打包文件通过该脚本上传到正式生产环境(注:生产环境和开发环境不互通)程序基本思路:将开发环境中的程序包拷贝到本地堡垒机将程序包进行解压获得解压后的文件通同步到生产服务器上主要知识点:python库os.system()的基本使用利用python调用xshell命令程序使用方法:pythonaddline.py开发主机ip程序包目标主机ip上传目录上传编号如:pythonaddline.py240/home/shaoj
系统 2019-09-27 17:52:05 1789
#-*-coding:utf-8-*-importsys,os'''将当前进程fork为一个守护进程注意:如果你的守护进程是由inetd启动的,不要这样做!inetd完成了所有需要做的事情,包括重定向标准文件描述符,需要做的事情只有chdir()和umask()了'''defdaemonize(stdin='/dev/null',stdout='/dev/null',stderr='dev/null'):'''Fork当前进程为守护进程,重定向标准文件描述
系统 2019-09-27 17:51:55 1789
最近在工作中遇到一个问题,就是有一个功能希望在各种服务器上实现,而服务器上的系统版本可能都不一样,有的是CentOS6.x,有的是CentOS7.x。需要说明的一点是,CentOS6.x上的Python版本是2.6.x的,而CentOS7.x上的Python版本是2.7.x的,这意味着我要实现的功能要适配这两种版本的系统。你可能会说,这有什么的,自己写的时候,注意一下就好了。事情其实没有那么容易,我要实现的功能是基于一个框架进行定制,需要修改不少的框架代码
系统 2019-09-27 17:51:50 1789
Python标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如urllib2这个HTTP客户端库。这里总结了一些urllib2的使用细节。1.Proxy的设置2.Timeout设置3.在HTTPRequest中加入特定的Header4.Redirect5.Cookie6.使用HTTP的PUT和DELETE方法7.得到HTTP的返回码8.DebugLogProxy的设置urllib2默认会使用环境变量http_proxy
系统 2019-09-27 17:51:34 1789
关于声明并初始化二维列表想要快速创建一个二维列表如:5x3的二维列表[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]正确用法:#先创建一个一维列表tmp=[0,]*3result=[]foriinrange(5):#拷贝对象result.append(tmp.copy())result[0][1]=1print(result)#[[0,1,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]误用:#得到的
系统 2019-09-27 17:51:23 1789
打开excel文件读取数据data=xlrd.open_workbook("excelFile.xls")读取工作表table=data.sheets()[0]#通过索引顺序获取table=data.sheet_by_index(0)#通过索引顺序获取table=data.sheet_by_name(u'Sheet1')#通过名称获取获取整行和整列的值(数组)table.row_values(i)#获取整行值table.col_values(i)#获取整列
系统 2019-09-27 17:51:17 1789
B.py调用A.py的函数或类在同一个文件夹下调用函数:A.py文件:defadd(x,y):print('和为:%d'%(x+y))B.py文件:importAA.add(1,2)或fromAimportaddadd(1,2)调用类:A.py文件:classA:def__init__(self,xx,yy):self.x=xxself.y=yydefadd(self):print("x和y的和为:%d"%(self.x+self.y))B.py文件:fr
系统 2019-09-27 17:51:08 1789