目录
-
1.时间处理
- 当前时间:2022-03-29
- 日期增加按月:2023-03-29
- 日期增加按天:2022-03-02
import time
from dateutil.relativedelta import relativedelta
print(time.strftime("%Y-%m-%d", time.localtime()))
print(str(datetime.date.today() + relativedelta(months=+12)))
print(str(datetime.date.today() + relativedelta(day=+2)))
-
2.字典取值jsonpath - for循环简化
item_response = {
"error_code" : 0,
"error_message" : "SUCCESS",
"unix_time" : 1648021129140,
"data" : {
"start" : 0,
"rows" : 20,
"total" : 2,
"record" : [ {
"id" : 1470763435556928,
}, {
"id" : 1470763456528448,
}
]
}
}
info = []
for i in range(item_response['data']['total']):
info .append(item_response['data']['record'][i]['id'])
info1 = jsonpath.jsonpath(item_response, '$.data.record[*].id')
print(info,info1)
-
3.args的使用方法
*args的使用方法:可以理解为只有一列的表格,长度不固定。
*args 用来将参数打包成tuple给函数体调用
**kwargs的使用方法:可以理解为字典,长度也不固定。
**kwargs 打包关键字参数成dict给函数体调用
def function(arg,*args,**kwargs):
print(arg,args,kwargs)
function(6,7,8,9,a=1, b=2, c=3)
-
4.取整和排序
- 向上取整:math.ceil()
- 向下取整:math.floor()、整除"//"
- 四舍五入:round()——奇数向远离0取整,偶数去尾取整;或言之:奇数进位,偶数去尾
- 向0取整:int()
- reverse()方法:反转排序
- sort()排序方法:正向排序,sort(reverse=True)反向排序
- sorted()方法:即可以保留原列表,又能得到已经排序好的列表
-
5.读取config 文件:configparser
import configparser import os import inspect class read(object): def __init__(self): this_file = inspect.getfile(inspect.currentframe()) #定义该函数的脚本文件的路径,包含脚本名称 self.path = os.path.abspath(os.path.dirname(this_file)) #绝对路径到文件夹(不包含脚本名称) def readconfig(self, filename, section, option): path_config = self.path.replace('folder1','folder2') #将self.path字符串栏目的folder1替换为folder2 config = configparser.ConfigParser() config.read(os.path.join(path_config,filename)) #连接两个或更多的路径名组件 return config.get(section , option)
-
6. excel 文件存储数据
from openpyxl import load_workbook def import_file_rewrite(filename,sheetname,data): file = "{}/file/{}".format(file_path.BASE_PATH, filename) wb = load_workbook(file) # 打开Excel文件 sheet = wb[sheetname] # 通过excel表格名称(rank)获取工作表 # 删除历史数据 title = [i.value for i in list(sheet.rows)[0]] sheet1 = wb.create_sheet('My Sheet New') sheet1.append(title) start = time.time() del wb[sheetname] time.sleep(1) wb.save(file) end = time.time() # print(end - start) time.sleep(2) sheet1.title = sheetname sheet = wb[sheetname] wb.save(file) for d in data: sheet.append(d) wb.save(file)