前言
这段时间实习,Android技术没得到发挥,学的一点Python反倒派上了用场。虽然完成的功能都比较简单,大多是一些字符串的操作,分割、替换、拼接等等。今天还是总结一下最近写的脚本,希望能有提高。不做一个只会堆功能的程序员。
top k
import heapd
heapd.nsmallest(n, iterable, key = lambda x:x.dist)
heapd.nlargest(n, iterable, key = lambda x:x.dist)
中文问题
# coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
def readFile(path):
f = open(path, 'r')
data = f.read()
f.close()
if data[:3] == codecs.BOM_UTF:
data = data[3:]
return data
命令行参数
注意有个默认参数——sys.argv[0]>>__main__
,你在命令行里输入的参数依次放在sys.argv[1]
、sys.argv[2]
、sys.argv[3]
…
执行命令行命令
import subprocess
subprocess.call(final_command, shell=True)
读写文件
def readFile(path):
f = open(path, 'r')
data = f.read()
f.close()
return data
def writeFile(path, data):
f = open(path, 'w')
f.write(data)
f.close()
发起post请求
import urllib2
def post(url, values):
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
result = response.read()
print '\n[result]:%s' % result
合并两个字典
dict_a.update(dict_b)
解析XML
try:
import xml.etree.cElementTree as ET
except ImportError:
import xml.etree.ElementTree as ET
tree = ET.ElementTree(file='pom.xml')
root = tree.getroot()
print root[2].text, root[3].text, root[4].text