经常写python,但很多小的点都记不住,每用必查,总结下来,下次查自己的吧。

1.时间获取:

import time
print  time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))
结果:2016-10-10 22:25:26
 
2.http发送post请求
import urllib
import urllib2

  try:

post_map = {}

tags_map = {}

sql_map = {}

sql_map["host"] = "10.218.145.123"

sql_map["user"] = "root"

sql_map["passwd"] = "123456"

sql_map["db"] = "hdploy"

sql_map["port"] = 3306

tags_map["product"] = "search.offline.maindump"

tags_map["sql_connetc"] = sql_map

post_map["metric"] = "deploy.offline.et2main.maindump"

post_map["tags"] = tags_map

new_map = JSONEncoder().encode(post_map)

url = 'http://10.97.212.17:9991'

post_data = urllib.urlencode(post_map)

req = urllib2.Request(url)

opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())

response = opener.open(req, new_map)

result = json.loads(response.read())

for key in result://根据返回的结果进行解析

if "version" in key.keys():

versions = key["version"]

version = versions.split("|")

return version[0][-9:]

except Exception, e:

print e

return 1

3.获取当前文件所在目录:

WORK_HOME = os.path.realpath(sys.path[0])

4.在python中获取执行命令的输出和执行结果:

import commands

(status, output) = commands.getstatusoutput(cmd)

弊端:output只有在cmd命令执行完才能输出

另一种方式:

import os

ret=os.system(cmd)

这种方式可以立即输出cmd的执行输出,但这个输出会输出到终端,无法获取,ret为名利执行的返回值

5.python中访问mysql:

conn = MySQLdb.connect(host= port=3336, user=, passwd=)

cursor = conn.cursor()

cursor.execute(sql)

conn.commit()

conn.close()

print 'Execute SQL[%r] Successed!'%sql

return cursor.fetchall()  返回值为tuple,如果只有一条记录,会返回形如(("",""),)

6.zookeeper操作:

class :

def __init__(self,host):

self.host = host

self.connected = False

self.handle = -1

self.callback_flag = False

self.cv = threading.Condition()

self.connected = False

def connection_watcher(handle, type, state, path):

self.cv.acquire()

self.connected = True

self.cv.notify()

self.cv.release()

self.cv.acquire()

self.handle = zookeeper.init(self.host, connection_watcher)

self.cv.wait(15.0)

self.cv.release()

if not self.connected:

raise Exception("Couldn't connect to host -", self.host)

def __del__(self):

if self.connected:

zookeeper.close(self.handle)

def GetZKValue(zk_host, path)://获取zk路径对应的value

zku =     if(zookeeper.exists(zku.handle,path) !=None):

(data,stat) = zookeeper.get(zku.handle, path, None)

return data

else:

return ""

7.更新json格式的文件:

def UpdateConf(conf, key, value):  //conf为json格式的文件名,key为要更新的key,value为更新后的值

conf_file = file(conf)

conf_value = json.load(conf_file)

conf_value[key] = value

new_file = open(conf,'w')

new_file.write(json.dumps(conf_value,ensure_ascii=False, indent = 4, separators = (',',':')))

new_file.close()

python常用功能总结的更多相关文章

  1. Python常用功能函数

    Python常用功能函数汇总 1.按行写字符串到文件中 import sys, os, time, json def saveContext(filename,*name): format = '^' ...

  2. Python常用功能函数总结系列

    Python常用功能函数系列总结(一) 常用函数一:获取指定文件夹内所有文件 常用函数二:文件合并 常用函数三:将文件按时间划分 常用函数四:数据去重 Python常用功能函数系列总结(二) 常用函数 ...

  3. Python常用功能函数系列总结(一)

    本节目录 常用函数一:获取指定文件夹内所有文件 常用函数二:文件合并 常用函数三:将文件按时间划分 常用函数四:数据去重 写在前面 写代码也有很长时间了,总觉得应该做点什么有价值的事情,写代码初始阶段 ...

  4. python——常用功能之文本处理

    前言 在生活.工作中,python一直都是一个好帮手.在python的众多功能中,我觉得文本处理是最常用的.下面是平常使用中的一些总结.环境是python 3.3 0. 基础 在python中,使用s ...

  5. Python常用功能函数系列总结(二)

     本节目录 常用函数一:sel文件转换 常用函数二:refwork文件转换 常用函数三:xml文档解析 常用函数四:文本分词 常用函数一:sel文件转换 sel是种特殊的文件格式,具体应用场景的话可以 ...

  6. Python常用功能函数系列总结(三)

    本节目录 常用函数一:词频统计 常用函数二:word2vec 常用函数三:doc2vec 常用函数四:LDA主题分析 常用函数一:词频统计 # -*- coding: utf-8 -*- " ...

  7. Python常用功能函数系列总结(七)

    本节目录 常用函数一:批量文件重命名 常用函数一:批量文件重命名 # -*- coding: utf-8 -*- """ DateTime : 2021/02/08 10 ...

  8. Python常用功能函数系列总结(六)

    本节目录 常用函数一:词云图 常用函数二:关键词清洗 常用函数三:中英文姓名转换  常用函数四:去除文本中的HTML标签和文本清洗 常用函数一:词云图 wordcloud # -*- coding: ...

  9. Python常用功能函数系列总结(五)

    本节目录 常用函数一:向量距离和相似度计算 常用函数二:pagerank 常用函数三:TF-IDF 常用函数四:关键词提取 常用函数一:向量距离和相似度计算 KL距离.JS距离.余弦距离 # -*- ...

随机推荐

  1. ios第三方开源库

    1.AFNetworking 目前比较推荐的iOS网络请求组件,默认网络请求是异步,通过block回调的方式对返回数据进行处理. 2.FMDB 对sqlite数据库操作进行了封装,demo也比较简单. ...

  2. Android开发 |常见的内存泄漏问题及解决办法

    在Android开发中,内存泄漏是比较常见的问题,有过一些Android编程经历的童鞋应该都遇到过,但为什么会出现内存泄漏呢?内存泄漏又有什么影响呢? 在Android程序开发中,当一个对象已经不需要 ...

  3. MySQL压测中遇到的一些问题

    批量insert http://blog.csdn.net/xiaoxian8023/article/details/20155429 Mysql jdbc 批处理数据,需要给jdbc连接加上rewr ...

  4. HDU 4267 A Simple Problem with Integers

    A Simple Problem with Integers Time Limit: 5000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  5. 浅淡C/C++中的typedef和#define

    在C/C++中,我们平时写程序可能经常会用到typedef关键字和#define宏 定义命令,在某些情况下使用它们会达到相同的效果,但是它们是有实质性的区别,一个是C/C++的关键字,一个是C/C++ ...

  6. codeforces 700C Break Up 暴力枚举边+边双缩点(有重边)

    题意:n个点,m条无向边,每个边有权值,给你 s 和 t,问你至多删除两条边,让s,t不连通,问方案的权值和最小为多少,并且输出删的边 分析:n<=1000,m是30000  s,t有4种情况( ...

  7. (三)相遇射线的3D碰撞盒

    序 在2D游戏中,我们知道处理碰撞时,需要设置精灵遮罩图.同样,进入3D,处理碰撞时需要3D模型作为“遮罩图”. 索尼克 飞檐走壁   目的 (1)处理模型间的碰撞问题         (2)获取鼠标 ...

  8. [GRYZ2015]INCR

    题目描述 数列 A1,A2,...,AN,修改最少的数字,使得数列严格单调递增. 输入格式 第 1 行,1 个整数 N 第 2 行,N 个整数 A1,A2,...,AN 输出格式 1 个整数,表示最少 ...

  9. 基于GPL329xx linux平台电容屏gsl1680的驱动调试分析

    因客户有用到了gsl1680 7寸电容屏,所以拿了一块过来,便在329xx的平台上面开始调试了. 大概浏览了一下所提供的资料,只有介绍模组的资料跟一份中文版的datasheet,datasheet只是 ...

  10. bzoj 2229 [Zjoi2011]最小割(分治+最小割)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2229 [题意] 回答若干个关于割不超过x的点对数目的询问. [思路] [最小割最多有n ...