小编big*_*nty的帖子

“为什么”同一版本的 2 个不同的 python 可执行文件?

当我按下tab命令时python3.7,我得到以下信息

python3.7          python3.7-config   python3.7m         python3.7m-config
Run Code Online (Sandbox Code Playgroud)

我查了一下内容python3.7m并找到了答案 - /sf/answers/1167413761/

接下来我进入每个实现的python终端并输入以下代码

>>> import sysconfig
>>> sysconfig.get_config_var('EXT_SUFFIX')
Run Code Online (Sandbox Code Playgroud)

我在两个 python 实现中得到相同的输出,即.cpython-37m-darwin.so

我还尝试了该命令diff <(python3.7 -m sysconfig) <(python3.7m -m sysconfig)来查看两个可执行文件的配置信息是否有任何差异,但输出为空意味着它们是相同的。

如果所有可执行文件和配置变量都相同,那么为什么要创建两个不同的 python 实现呢?

笔记:

我不是在谈论python3.7/3.7m-config这里。

python python-3.x python-internals pythoninterpreter

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

kafka密钥的最大长度是多少?

我将根据某些配置动态地获取 kafka 消息的键。现在我想知道,消息密钥长度是否有单独的设置,或者仅受(整个)消息大小限制?

我尝试搜索此信息,但到处都只提到消息大小。

apache-kafka

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

列表python的内存大小

我正在用列表做一些实验,然后我想到了自引用列表。我搜索了 SO 并得到了一些关于它的基本问题的答案。但是当我尝试获取不同长度的自引用列表的内存大小时,我发现了一个有趣的模式

重现代码:

import sys

memory_size = {}

for length in range(50):
    lst = []
    for length_loop in range(length):
        lst.append(lst)
    memory_size[length] = sys.getsizeof(lst)
Run Code Online (Sandbox Code Playgroud)

memory_size 的值:

{0: 64, 1: 96, 2: 96, 3: 96, 4: 96, 5: 128, 6: 128, 7: 128, 8: 128, 9: 192, 10: 192, 11: 192, 12: 192, 13: 192, 14: 192, 15: 192, 16: 192, 17: 264, 18: 264, 19: 264, 20: 264, 21: 264, 22: 264, 23: 264, 24: 264, 25: 264, 26: 344, …
Run Code Online (Sandbox Code Playgroud)

python list python-3.x python-internals

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

在 python 中模拟 BigQuery 连接

我在 python 文件中有以下代码。我必须对该文件进行单元测试。但为了做到这一点,我需要实例化该类的对象

class BigQuery(metaclass=singleton.Singleton):
    """
    Big Query Class for operations on big query
    Will standardize in future versions.
    """

    def __init__(self):
        """
        Used for initializing client
        """
        try:
            self.client = bigquery.Client.from_service_account_json(
                SERVICE_ACCOUNT_JSON)
        except:
            logging.error("Cannot instantiate bigquery client", exc_info=True)
            raise Exception("Cannot instantiate bigquery client.")
Run Code Online (Sandbox Code Playgroud)

上面的类还包含其他需要测试的方法。如何在不调用 bigquery API 的情况下模拟每个方法的对象?

mocking python-3.x google-bigquery python-unittest python-unittest.mock

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

使用 PYTHON 运行 Google 数据流模板

我想使用 PYTHON 执行 Google 数据流模板。实际上,我一直在使用Dataflow REST APICloud Functions集成执行数据流模板。这是我在 Postman 中执行的 Dataflow 模板:

网址: https://dataflow.googleapis.com/v1b3/projects/{{my-project-id}}/templates:launch?gcsPath=gs://{{my-cloud-storage-bucket}}/temp/cloud-dataprep-template

    {
    "jobName": "test-datfalow-job",
    "parameters": {
        "inputLocations" : "{\"location1\":\"gs://{{my-cloud-storage-bucket}}/my-folder/**/*\"}",
        "outputLocations": "{\"location1\":\"gs://{{my-cloud-storage-bucket}}/my-output/output.csv\"}"
    },
    "environment": {
        "tempLocation": "gs://{{my-cloud-storage-bucket}}/tmp",
        "zone": "us-central1-f"
    }
}
Run Code Online (Sandbox Code Playgroud)

我不知道是否有机会使用 google-api-python-client 或者我必须使用 python 的 requests.post 和 Google Cloud Authentication 执行此 HTTP POST

python post google-cloud-dataflow

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

apache 光束数据流中的外部 api 调用

我有一个用例,我读入存储在谷歌云存储中的换行 json 元素并开始处理每个 json。在处理每个 json 时,我必须调用外部 API 来执行重复数据删除,无论该 json 元素之前是否被发现。我在做一个ParDoDoFn每个JSON。

我还没有看到任何在线教程说明如何从 apache beam DoFnDataflow调用外部 API 端点。

我正在使用JAVABeam 的 SDK。我学习的一些教程解释了使用startBundleFinishBundle但我不清楚如何使用它

java google-cloud-dataflow apache-beam apache-beam-io

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

Apache Kafka 配置中“leader.imbalance.per.broker.percentage”的含义

浏览卡夫卡文档,我发现了这个特殊的配置。leader.imbalance.per.broker.percentage

直觉上是什么leader.imbalance.per.broker.percentage意思?我怎样才能模拟这个配置的工作?

Type:   int
Default:    10
Valid Values:   
Importance: high
Update Mode:    read-only
Run Code Online (Sandbox Code Playgroud)

为什么这个值是10默认值?

apache-kafka

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

apache beam 窗格和窗口之间的区别

窗格和窗户有什么区别?传入的元素被分组到窗口中。那么窗格包含什么呢?

我从 Beam 文档中获取了以下代码

.of(new DoFn<String, String>() {
     public void processElement(@Element String word, PaneInfo paneInfo) {
  }})
Run Code Online (Sandbox Code Playgroud)

每个元素都属于一个窗格吗?还是多个窗格?需要一个简单的类比来理解窗格和窗口

google-cloud-dataflow apache-beam apache-beam-internals

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

处理循环异常

a = 6
item_list = [1,2,3,4,5]
for items in item_list:
    if items == a:
        print("match found")
    else:
        print ("no match")
Run Code Online (Sandbox Code Playgroud)

在这段代码中,我希望在完成所有迭代后只打印一次“不匹配”;不是每次迭代。如何修改代码?

python for-loop exception

0
推荐指数
1
解决办法
52
查看次数