python
独孤仁
宠辱不惊,闲看庭前花开花落去留无意,漫随天外云卷云舒....
展开
-
python点滴-format函数
1、代码PAGE_HTML = """<p>Welcome, {name}!</p><p>Produc原创 2018-06-18 01:15:14 · 155 阅读 · 0 评论 -
python迭代工具库itertools
一、简介 itertools是python内置工具库,有很多好用的函数,使用前只需导入from itertools import *二、工具方法1、islice 切片函数,根据参数提取数据。 语法:islice(seq,start,stop,step),从start位置到stop位置,按步长step截取seq数据print list(islice(r...原创 2018-08-08 10:49:08 · 414 阅读 · 0 评论 -
python迭代器与生成器
1、生成器(generator)一定是迭代器,反之不成立2、生成器是一种特殊的迭代器,它的返回不是通过return而是用yield3、可迭代对象(iterable):可迭代对象和容器概念都是一种统称,并不是指某种具体的数据类型,list是可迭代对象,dict是可迭代对象,set也是可迭代对象4、迭代器对象:可迭代对象实现了_ _ iter_ _方法,该方法返回一个迭代器对象,迭代器对象...原创 2018-08-08 14:51:25 · 111 阅读 · 0 评论 -
mac系统pycharm django开发环境配置
1、安装pycharm 要注意安装pycharm时,系统会自动创建个python的虚拟环境,原理也很简单:就是copy一份系统安装的python,我系统默认安装的python2.7,新创建的python虚拟环境为: 路径是在用户目录下: /Users/yangwenren/venv2、安装django 去django官网下载源码包,下载支持python2.7的最后一个版本 Djan...原创 2018-08-19 13:52:03 · 7120 阅读 · 0 评论 -
python爬虫小试
先说需求: 1、在django项目中需要更新新股的上市时间,但又不想手动去更新; 2、所以准备用爬虫技术去自动获取上市时间,然后更新数据库; 3、所幸找到了 天天基金网 有想要信息,例如新股 中铝国际 的详情页 http://data.eastmoney.com/xg/xg/detail/601068.html。 1、工具安装requests:python中处理http请求的利...原创 2018-09-03 19:40:53 · 180 阅读 · 0 评论 -
python压缩日志并删除原文件
做运维,一定要管好应用的日志,定期压缩日志文件,减少磁盘空间的浪费。# -*- coding: utf-8 -*-__author__ = 'yangwenren'import sysimport osimport timeimport shutilimport datetimeimport zipfilereload(sys)sys.setdefaultencoding('...原创 2018-12-13 19:04:47 · 1374 阅读 · 0 评论 -
python合并升级包
碰到奇怪的事,升级包竟然需要自己先合并再去升级,没办法了,人不能被尿憋死,写个脚本呗。# -*- coding: utf-8 -*-__author__ = 'yangwenren'import sysimport osimport timeimport shutilimport datetimereload(sys)sys.setdefaultencoding('utf8'...原创 2018-12-27 14:03:30 · 312 阅读 · 1 评论 -
python复制文件夹-忽略日志文件
在应用升级前,经常需要先备份应用目录,不过一般都是要忽略日志目录或日志文件*.log,使用python写了个脚本,原来python自带过滤函数,自己还找了那么久。。。。。。# -*- coding: utf-8 -*-__author__ = 'yangwenren'import sysimport osimport timeimport shutilimport datetime...原创 2018-12-21 18:08:08 · 1112 阅读 · 0 评论 -
python反射技术使用(动态变量名)
需求:需要通过动态变量名,取得对应的值。例如,定义有如下类(也许是自己设计的表结构不合理),时不时需要获取或设置变量 env_* 变量的值然后更新数据库,所以急需使用变量名的变量,要不就需要写一堆判断语句:# 发布单 modelclass Order(models.Model): current_env = models.IntegerField(default=0) # 0:刚新...原创 2019-01-03 16:34:18 · 1214 阅读 · 0 评论 -
python重点基础语法
1、lambda函数 lambda函数是匿名函数,但可以把其赋于变量或者函数变量语法:lambda argument_list: expression例子:lambda x,y:x+y##与map函数配合使用map(lambda x:x+1,[1,2,3])##与reduce函数配合使用reduce(lambda x,y:x+y,[1,2,3])...原创 2018-08-03 14:02:31 · 173 阅读 · 0 评论 -
python多实例tomcat自动安装(二)
上一节已经分析了tomcat多实例的原理,这节只需按着那思路实现自动化脚本即可。 一、思路规划最终安装完成的目录: app:根目录;servers:放置所有安装的容器,包含tomcat、nginx等等,以实例名区分;tomcat:放置官方tomcat的安装原文件(如果是nginx,就放置在nginx目录);deploytool:放置容器管理脚本(启停),后面会分析它的具体结构。...原创 2018-08-11 22:49:27 · 557 阅读 · 0 评论 -
python获取nginx超时访问日志
#!/usr/bin/env python# -*- coding: UTF8-*-# author by ywrimport sysimport reLOGFILE = "host.access.log"LONGTIMEFILE = "longtime.log.txt"##分析日志函数def analyseLog(starttime,endtime): #print...原创 2018-07-24 11:05:08 · 746 阅读 · 0 评论 -
python解析日志并邮件告警
#!/usr/bin/env python# coding=gbkfrom os.path import getsizeimport sysimport reimport timeimport datetimeimport osfrom re import compile,IGNORECASEimport smtplibfrom email.MIMEText import MI...原创 2018-07-24 15:59:23 · 1749 阅读 · 1 评论 -
python向influxdb写入数据
python版本:3.6 influxdb版本:1.5.2 kafka版本:2.11-1.1.01、基本环境 使用python消费kafka中的数据,然后插入influxdbpython安装 requests模块python安装 kafka模块kafka服务器:192.168.1.100:9092influxdb服务器:192.168.1.100:80862、关键...原创 2018-06-11 18:36:43 · 6544 阅读 · 0 评论 -
pycharm常用快捷键
1、快速定位外部引用:ctrl + 点击2、待续。。。原创 2018-07-30 15:42:52 · 149 阅读 · 0 评论 -
python调用SaltStack接口
代码片断import urllibimport urllib2import json### saltstack master 信息salt_master = {'ip':'192.168.1.100', 'port':'8000', 'username':'root', 'passwo...原创 2018-07-30 16:16:38 · 1314 阅读 · 0 评论 -
python基础语法(一)
1、list 列表,是一种有序集合,可以随时添加和删除其中的元素表达方式:list = [],里面元素的数据类型可以不同,还可以包含另外的list,当包含另外的list时,可以当成二维数组,关键方法:list[-1]:倒数第一个数list.append():在末尾追加元素;list.insert(i,data):在索引位置i插入数据data;list.pop():删除末尾...原创 2018-08-05 11:20:48 · 268 阅读 · 0 评论 -
python多线程(一)
一个进程至少有一个线程 python的标准库提供了两个模块:_thread和threading,_thread是低级模块,threading是高级模块,对_thread进行了封装 特殊: python的线程虽然是真正的线程,但解释器执行代码时,有一个GIL锁:Global Interpreter Lock,任何python线程执行前,必须先获得GIL锁,然后,每执行100条字节码,解释器就自...原创 2018-08-09 23:21:13 · 209 阅读 · 0 评论 -
python面向对象相关知识(二)
1、函数class Animal(object): ##无参构造函数,定义类时默认存在,自己定义会覆盖 def __init__(self): self.name = "default" self.age = 18 ##有参构造函数,无重载功能,相同方法名,后定义会覆盖前定义的方法 def __init__(self,nam...原创 2018-08-05 22:25:45 · 124 阅读 · 0 评论 -
python解析nginx access日志
python解析nginx access日志,并通过django把解析结果插入数据库。#coding=utf-8import osimport sysimport timefrom kafka import KafkaConsumerimport tracebackclass nginx_tracker(object): """ nginx的入口监控...原创 2018-08-01 11:14:57 · 1254 阅读 · 0 评论 -
python多实例tomcat自动安装(一)
在公司做运维,会遇到在linux机器安装一些中间件,比较常见的是安装tomcat、nginx。为了运维工作的标准化,也为了防止不同人安装习惯不一样导致的安装目录乱七八糟,所以一般会实现个自动化安装脚本,这里用python实现个自动化安装。在编写脚本前,先熟悉多实例tomcat的原理。一、多实例tomcat原理 多实例tomcat:这里是指在单机上安装多个tomcat实例。 应用场景:在生产...原创 2018-08-11 20:39:30 · 1580 阅读 · 0 评论 -
python复制、解压zip保留原修改时间
情景:在使用python复制文件或者解压zip文件时,文件的修改时间总是被搞成了当前的执行时间,这样有时会让人挺蛋疼的。解压并保留原修改时间:import zipfile# 发布函数def deploy(): # 发布单号 order_code = sys.argv[1] # 解压到当前目录,要包含根目录 deploy_file_zip = os.path...原创 2019-01-04 19:52:01 · 3045 阅读 · 1 评论