小编jul*_*ine的帖子

将 Spring Webflux Mono 转换为 Either,最好不阻塞?

我正在使用KotlinArrow以及. 我想做的是将Mono实例转换为Eitherspring-webflux

当响应成功或返回错误时Either调用创建实例。Either.right(..)WebClientEither.left(..)WebClient

我正在寻找一种Mono类似于Either.fold(..)的方法,我可以在其中映射成功和错误的结果,并返回与Mono. 像这样的东西(伪代码不起作用):

val either : Either<Throwable, ClientResponse> = 
                   webClient().post().exchange()
                                .fold({ throwable -> Either.left(throwable) },
                                      { response -> Either.right(response)})
Run Code Online (Sandbox Code Playgroud)

一个人应该怎样走呢?

kotlin project-reactor spring-webflux arrow-kt

6
推荐指数
1
解决办法
3069
查看次数

在Python多处理中,为什么子进程名称是__mp_main__?有没有办法用自定义名称覆盖它?

#!/usr/bin/env python3

import multiprocessing as mp


def child_process():
    print('Hi! My name is', __name__)


print('Hi! My name is', __name__)
if __name__ == '__main__':
    mp.Process(target=child_process).start()

Run Code Online (Sandbox Code Playgroud)

上面的代码输出如下: 上述代码的控制台输出

我很困惑

  1. 为什么是子进程名称__mp_main__
  2. 为什么要打印两次?

python multiprocessing python-multiprocessing

2
推荐指数
1
解决办法
1658
查看次数

`x in List` 与 `x in Dict` 和 `x in Set` 之间的区别(其中 `x` 是极坐标数据类型)

这主要是一个关于 python 的问题:How x in [a, b, c]isvalued different from x in {a, b, c}.

我正在努力解决的上下文是这样的:

import polars as pl
s = pl.Series(["a", "b"], dtype=pl.Categorical)

s.dtype in [pl.Categorical, pl.Enum]  # True
s.dtype in {pl.Categorical, pl.Enum}  # False
s.dtype in {pl.Categorical: 1, pl.Enum: 2} # False
Run Code Online (Sandbox Code Playgroud)

我想更好地理解Python。我还想知道极地是否可以做任何事情来使第二种情况起作用,因为它目前看起来像一把步枪。

python python-polars

2
推荐指数
1
解决办法
136
查看次数