小编mis*_*ope的帖子

如何使用类型注释在 Python 中注释可变参数?

如何注释可变参数函数的参数?

例子:

def foo(*args):  # Each arg expected to be of type T
    ...
Run Code Online (Sandbox Code Playgroud)

是否有任何打字注释?

python typing pep

8
推荐指数
2
解决办法
2164
查看次数

是否可以在“Pipfile”的包部分中使用“.env”中的环境变量

我必须使用有限的凭据才能从私有存储库安装我的软件包,但我不希望将它们与我的Pipile.

\n\n

这是一个简单的合法用例:

\n\n
[[source]]\nname = "pypi"\nurl = "https://pypi.org/simple"\nverify_ssl = true\n\n[dev-packages]\npytest = "*"\n\n[packages]\nmy-package = {git = "https://${USER}:${TOKEN}@bitbucket.org/my-team/my-package.git",ref = "v0.1"}\n\n[requires]\npython_version = "3.7"\n\n[scripts]\nshow-credentials = "echo ${USER}:${TOKEN}"\n
Run Code Online (Sandbox Code Playgroud)\n\n

并在.env文件中包含以下内容:

\n\n
USER=foo\nTOKEN=bar\n
Run Code Online (Sandbox Code Playgroud)\n\n

执行pipenv run show-credentials将显示当前凭据,foo:bar但不会\xe2\x80\x99 尊重这些环境变量来安装my-package.

\n\n

是否有任何可能的解决方法或者这可能是一个很好的功能请求pipenv

\n

environment-variables pipenv

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

如何使用pipfile在自定义git分支的pipfile包中指定?

可以在Pipfile自定义Git存储库的包中指定.但是我找不到关于如何指定具体分支或用于安装的提交的综合文档.

是否有关于如何在指定自定义分支,版本或提交Pipfile所支持的python包中使用Git URL的完整参考pipenv

使用等效的pipenv命令行参数非常好.

python git virtualenv pipenv

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

如何处理 kotlin 多平台数据类中的注释?

最近,我将 KMP 项目拆分为全栈项目和核心库(主要由公共数据类组成),并发现我需要对现在在公共数据类中定义的数据类之一使用 JVM 库中的注释。模块。

似乎不可能在 Kotlin 公共代码中使用 Java 库中的注释。

有哪些可能的方法可以解决此类问题,最好避免通过声明此类数据类expect,然后在actual平台中使用不同的注释重复其实现?

kotlin-multiplatform

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

Kotlin ENUM类具有由委托实现的公共接口

这是一个关于以最小的样板找到漂亮的设计方法的抽象问题。

先决条件:

  • 我有一个ENUM类,用于枚举各种提供程序,即: enum class Provider { Google, Microsoft }
  • 假设有一个服务接口interface Foo { fun getMail(): Mail },将为每个特定的提供程序实现。

我很好奇是否有一种方法可以定义ENUM类Provider,以实现接口,Foo而我以后可以指定每个具体提供者将通过哪些对象实现?

我想知道是否有没有样板的方法来定义具体接口的枚举类,而我以后可以定义将通过哪些对象实现具体提供者。

先决条件并不牢固,因此,如果一个更好的设计需要更改,那么我渴望一个更好的建议。

enums delegates kotlin

4
推荐指数
1
解决办法
1960
查看次数

如何在 Beam 中渲染管道图?

使用 Apache Beam Python SDK 版本 2.9.0,是否可以获得类似于 Google\xe2\x80\x99s 数据流的可渲染管道图表示,而不是运行它?

\n\n

我很难组装复杂的管道,并且在尝试使用 执行它之前我很高兴看到组装好的管道DirectRunner

\n

apache-beam

4
推荐指数
1
解决办法
1321
查看次数

如何从另一个命名元组推导或子类型命名元组?

前言

\n\n

我想知道如何以Python方式概念化数据类。\n特别是我\xe2\x80\x99m 谈论 DTO(数据传输对象)。

\n\n

我在 @jeff-oneill 问题 \xe2\x80\x9c使用 Python 类作为数据容器\xe2\x80\x9d 中找到了一个很好的答案,其中 @joe-kington 很好地使用了内置namedtuple.

\n\n

问题

\n\n

在 python 2.7 文档的第 8.3.4 节中,有一个关于如何组合多个命名元组的很好的示例。\n我的问题是如何实现相反的效果?

\n\n

例子

\n\n

考虑文档中的示例:

\n\n
>>> p._fields            # view the field names\n(\'x\', \'y\')\n\n>>> Color = namedtuple(\'Color\', \'red green blue\')\n>>> Pixel = namedtuple(\'Pixel\', Point._fields + Color._fields)\n>>> Pixel(11, 22, 128, 255, 0)\nPixel(x=11, y=22, red=128, green=255, blue=0)\n
Run Code Online (Sandbox Code Playgroud)\n\n

如何从 \xe2\x80\x9cPixel\xe2\x80\x9d 实例推断出 \xe2\x80\x9cColor\xe2\x80\x9d 或 \xe2\x80\x9cPoint\xe2\x80\x9d 实例?

\n\n

最好是具有蟒蛇精神。 …

python dto namedtuple python-2.7 python-attrs

3
推荐指数
1
解决办法
1159
查看次数

如何使用Python模块“ attrs”实现“ attr.asdict(MyObject)”的反向转换

在Python模块的文档attrs 指出,有一种方法可以将属性的类转换为字典表示形式:

例:

>>> @attr.s
... class Coordinates(object):
...     x = attr.ib()
...     y = attr.ib()
...
>>> attr.asdict(Coordinates(x=1, y=2))
{'x': 1, 'y': 2}
Run Code Online (Sandbox Code Playgroud)

如何实现对立面:Coordinates从有效的字典表示形式中获取的实例,而不使用样板内容,并且对attrs模块感到满意?

python attributes python-attrs

3
推荐指数
2
解决办法
1439
查看次数

Ktor 客户端身份验证功能不发送授权标头

我试图在 Kotlin/MPP(多平台)项目和 JVM 目标功能中使用ktor 客户端基本身份验证似乎没有效果。

下面是一个重现的例子:

import io.ktor.client.HttpClient
import io.ktor.client.features.ResponseException
import io.ktor.client.features.auth.Auth
import io.ktor.client.features.auth.providers.basic
import io.ktor.client.features.json.JsonFeature
import io.ktor.client.features.json.serializer.KotlinxSerializer
import io.ktor.client.features.logging.DEFAULT
import io.ktor.client.features.logging.LogLevel
import io.ktor.client.features.logging.Logger
import io.ktor.client.features.logging.Logging
import io.ktor.client.request.get
import io.ktor.client.request.header
import kotlinx.coroutines.runBlocking
import java.util.*

fun main() = runBlocking {
    val client = HttpClient {
        install(Logging) {
            logger = Logger.DEFAULT
            level = LogLevel.HEADERS
        }
        install(JsonFeature) {
            serializer = KotlinxSerializer()
        }
        install(Auth) {
            basic {
                username = "user"
                password = "pass"
            }
        }
    }
    val url = "https://en.wikipedia.org/wiki/Main_Page" …
Run Code Online (Sandbox Code Playgroud)

kotlin ktor kotlin-multiplatform ktor-client

3
推荐指数
1
解决办法
2320
查看次数