小编Zio*_*sof的帖子

Python 缓存工具统计并使用自定义密钥

我正在寻找一种使用 python 的方法cachetools内置库功能的缓存,但也支持命中/未命中统计,使用自定义键函数,并且如果可能的话支持无界缓存?

不幸的是,我只能找到这些方法:

  1. 如果我想使用未绑定的缓存,并有命中/未命中统计信息:
    from cachetools.func import lru_cache
    
    @lru_cache(maxsize=None)
    def foo(a, b, c=None):
        print("foo")
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果我想使用未绑定的缓存,并使用自定义键函数:
    from cachetools import cached
    
    @cached(
        cache={},
        key=lambda a, b, c=None: "a" if c is None else "b"
    )
    def foo(a, b, c=None):
        print("foo")
    
    Run Code Online (Sandbox Code Playgroud) 或者,使用这个“黑客”:
    from cachetools import cached, LRUCache
    
    @cached(
        cache=LRUCache(maxsize=1, getsizeof=lambda _: 0), # will always pass the test of maxsize check
        key=lambda a, b, c=None: "a" if c is None else "b"
    )
    def foo(a, b, c=None):
        print("foo")
    
    Run Code Online (Sandbox Code Playgroud)

如果我想使用命中/未命中统计数据和自定义按键功能,我该怎么做?
我知道如何自己实现一个,我只是想知道python的cachetools/functools中是否有一些已经内置的方法支持这一点?

python caching

7
推荐指数
0
解决办法
2343
查看次数

Mac OS X iterm2:向后删除单词

我一直在尝试自定义一个快捷键来删除退格整个单词。
我已经尝试了网上的所有方法,但仍然不起作用。

我正在使用 iterm2,使用Natural Text Editing预设的键,并且仍然 - 执行command + delete将删除整行,执行option + delete将删除最后一个单词,直到某个特殊字符(这可能是斜杠、连字符、下划线、分号等)。

执行control + W与 得到相同的结果option + delete

我确实想要向后删除直到某个特殊字符的功能,但我也希望能够删除整个单词(直到空格)。

macos keyboard-shortcuts iterm2

5
推荐指数
1
解决办法
3638
查看次数

标签 统计

caching ×1

iterm2 ×1

keyboard-shortcuts ×1

macos ×1

python ×1