工作笔记 - AnneBlog/bugMaster GitHub Wiki

  • 读写excel
from openpyxl import load_workbook
wb = load_workbook("C:\\Users\\luojm\\Desktop\\test.xlsx")
wb.active
sheet1 = wb['Sheet1']
sheet2 = wb['Sheet2']
sheet3 = wb['Sheet3']

title = ["title1", 'title2', 'title3']
for index,value in enumerate(title, 1): #依次取值
    sheet3.cell(row=1, column=index).value=value

for col in range(2, 5):
    for row in range(3, 9):
        sheet1_value=sheet1.cell(row=row, column=col).value
        sheet2_value=sheet2.cell(row=row+1, column=col+1).value
        sheet3.cell(row=row-1, column=col-1).value = sheet1_value-sheet2_value
wb.save(filename="C:\\Users\\luojm\\Desktop\\test.xlsx")
  • 正则表达式
from openpyxl import load_workbook
import re

wb = load_workbook("C:\\Users\\luojm\\Desktop\\test.xlsx")
wb.active
sheet = wb['a']

#将匹配的数字乘以2
def double(matched):
    value = int(matched.group('num'))
    return str(value * 2)

for col in range(1, 2):
    for row in range(1, 7):
        sheet_value=sheet.cell(row=row, column=col).value
        sheet.cell(row=row, column=col+1).value = re.sub(r"\D", "", sheet_value)
        sheet.cell(row=row, column=col+2).value = re.sub(r'\d', "", sheet_value)
        sheet.cell(row=row, column=col+3).value = re.sub('(?P<num>\d+)', double, sheet_value)


wb.save(filename="C:\\Users\\luojm\\Desktop\\test.xlsx")
  • 读写txt
#追加内容
with open('C:\\Users\\luojm\\Desktop\\test.txt', 'ab') as wr:
    wr.write("\n小红,2017-04-02,1")

# 读txt,并作统计
ret = {}
with open('C:\\Users\\luojm\\Desktop\\test.txt', 'rb') as fid:
    for line in fid:
        items = line.strip().split(',')
        key = items[0]+" "+items[1]
        # key = items[0]
        if ret.has_key(key):
            ret[key] += int(items[2])
        else:
            ret[key] = int(items[2])

#依次返回
for key,value in ret.iteritems():
    print key,value
  • python操作Mysql
import MySQLdb
import traceback

conn = MySQLdb.connect(host='172.16.1.219', port=3306, user='cmsdev', passwd='cmsdev', db='cmsrelease',charset="utf8")
cur = conn.cursor()
sql1 ="insert into `in_stock_detail` (`in_stock_id`, `product_id`, `count`, `true_count`, `false_count`, `buy_contract_detail_id`) values (103,83,2,{true_count},{false_count},1313);"
a = [i for i in range(1,9)]
b = [j for j in range(11,26,2)]

for i in range(8):
    try:
        cur.execute(sql1.format(true_count = a[i], false_count = b[i]))
        conn.commit()
    except:
        traceback.print_exc()
        conn.rollback()

cur.close()
conn.close()
⚠️ **GitHub.com Fallback** ⚠️