Skip to content

Instantly share code, notes, and snippets.

View leisurelicht's full-sized avatar
🎯
Focusing

LeisureLicht leisurelicht

🎯
Focusing
View GitHub Profile
@leisurelicht
leisurelicht / router.go
Last active March 21, 2020 07:48
前缀树算法实现router
package http_api
import (
"fmt"
"strings"
)
type node struct {
path string // 路由路径
part string // 路由中由'/'分隔的部分, 比如路由/hello/:name,那么part就是hello和:name
#!/usr/bin/python
"""
面试题
Q:有一个大文件日志日志内容包含 访问时间 访问 IP问如何统计每分钟访问次数超过 100 次的 IP
访问日志文件内的数据都是根据时间有序排列的所以只要逐行处理把秒去掉然后利用字典统计每分钟内的IP访问次数
到下一分钟了就把字典清空重新统计就可以了
#!/usr/bin/env python
# -*-coding: utf-8-*-
import datetime
import xlwt
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('My Sheet')
# style = xlwt.XFStyle()
@leisurelicht
leisurelicht / workbook.md
Last active February 13, 2024 16:53
Export queryset to Excel workbook
from django.http import HttpResponse
from .utils import queryset_to_workbook

def download_workbook(request):
    queryset = User.objects.all()
    columns = (
        'first_name',
        'last_name',
        'email',
@leisurelicht
leisurelicht / admin.py
Last active August 20, 2024 00:44
Make all fields readonly for Django Admin
class OpsIPInfoAdmin(admin.ModelAdmin):
def get_readonly_fields(self, request, obj=None):
# make all fields readonly
readonly_fields = list(
set([field.name for field in self.opts.local_fields] +
[field.name for field in self.opts.local_many_to_many])))
if 'is_submitted' in readonly_fields:
readonly_fields.remove('is_submitted')