我有一组类,让我们称它们为Foo和,它们都继承自当前范围之外定义的Bar基类(不是由我定义的)。Father我定义了一个DummyProtocol具有 function 的协议类do_something。
class DummyProtocol(Protocol):
def do_something(self):
...
class Foo(Father):
def do_something(self):
pass
class Bar(Father):
def do_something(self):
pass
Run Code Online (Sandbox Code Playgroud)
我有一个功能create_instance。
def create_dummy_and_father_instance(cls, *args, **kwargs):
return cls(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
我想以某种方式提示它,即 cls 被提示接受一个Father也实现DummyProtocol.
所以我将函数更改为 this 以表明 cls 是一个继承自 和 的Father类型DummyProtocol
def create_dummy_and_father_instance(
cls: Type[tuple[Father, DummyProtocol]], *args, **kwargs
):
return cls(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
但我在以下位置收到此错误mypy:
Cannot instantiate type "Type[Tuple[Father, DummyProtocol]]"
Run Code Online (Sandbox Code Playgroud) 我正在尝试将example.com/minio位置重定向到 minio 控制台,该控制台在 nginx 代理后面运行,两者均由 docker compose 文件运行。我的问题是,当我尝试将 minio 端点反向代理到路径时,/minio它不起作用,但是当我minio在 nginx 反向代理中的根路径上运行反向代理时,它起作用。我真的无法找出问题所在。
这是我的撰写文件:
services:
nginx:
container_name: nginx
image: nginx
restart: unless-stopped
ports:
- 80:80
- 443:443
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf
- ./log/nginx:/var/log/nginx/
minio:
image: minio/minio
container_name: minio
volumes:
- ./data/minio/:/data
command: server /data --address ':9000' --console-address ':9001'
environment:
MINIO_ROOT_USER: minio_admin
MINIO_ROOT_PASSWORD: minio_123456
ports:
- 9000
- 9001
restart: always
logging:
driver: "json-file"
options:
max-file: "10"
max-size: 20m
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1:9000/minio/health/live"]
interval: 30s …Run Code Online (Sandbox Code Playgroud) 我正在尝试将 gensim 创建的 fasttext 模型导出到二进制文件。但文档并不清楚如何实现这一目标。到目前为止我所做的:
model.wv.save_word2vec_format('model.bin')
Run Code Online (Sandbox Code Playgroud)
但这似乎并不是最好的解决方案。因为后来当我想使用以下方式加载模型时:
fasttext.load_facebook_model('model.bin')
Run Code Online (Sandbox Code Playgroud)
我陷入了无限循环。加载由函数fasttext.model创建的内容model.save('fasttext.model)在大约 30 秒内完成。
我正在尝试编写一个基本抽象类,它具有一些将使用构造函数初始化的属性。到目前为止我有这个:
from abc import ABC, abstractmethod
class A(ABC):
def __init__(self, n, *params):
self.n = n
self.initialize_params(*params) #I want to do this in all subsclasses of A
def initialize_params(self, *params)
pass
@abstractmethod
def do(self):
pass
class B(A):
def __init__(self, m, n, *super_params):
self.m = m
super(A, self).__init__(n, *super_params)
def do(self):
print("this is B")
Run Code Online (Sandbox Code Playgroud)
但这会TypeError因为__init__B 中 A 的实例化而抛出。正确的方法是什么?
python ×3
abc ×1
docker ×1
fasttext ×1
gensim ×1
inheritance ×1
minio ×1
mypy ×1
nginx ×1
nlp ×1
python-3.x ×1
type-hinting ×1