如何将变量从python文件传输到python文件

如何将变量从python文件传输到python文件,python,flask,trello,Python,Flask,Trello,我想把label_count和card_m传输到我的主文件中。我该怎么做?我已经试过导入了,但没用。如果有任何解决方案,我不想重复这么多次的请求 import requests import json from itertools import chain from collections import Counter url = "https://api.trello.com/1/boards/OIeEN1vG/cards" query = { 'key':

我想把label_count和card_m传输到我的主文件中。我该怎么做?我已经试过导入了,但没用。如果有任何解决方案,我不想重复这么多次的请求

import requests
import json
from itertools import chain 
from collections import Counter
  
url = "https://api.trello.com/1/boards/OIeEN1vG/cards"
query = {
    'key': 'e8cac9f95a86819d54194324e95d4db8',
    'token': 'aee28b52f9f8486297d8656c82a467bb4991a1099e23db539604ac35954d5633'
    }

response = requests.request(
    "GET",
    url,
    params=query
    )
data = response.json()
card_labels_string = list(chain.from_iterable([d['labels']for d in data]))
card_labels = [c ["color"] for c in card_labels_string]
label_count = dict((i, card_labels.count(i)) for i in card_labels)

cards = dict(zip([d['name']for d in data],[d['shortLink']for d in data]))
card_m = {}
for key,value in cards.items():
    url_card = "https://api.trello.com/1/cards/{}/members".format(value)
    res = requests.request(
        "GET",
        url_card,
        params=query
        )
    names = [f['fullName']for f in res.json()]
    card_m.update({key : names})

print(label_count, card_m)


    
“转移”是什么意思?如果要在其他函数中使用它们,请执行以下操作:

from main_python import other_function

print(label_count, card_m)
other_function(label_count, card_m)

好的,根据你的评论,我想我现在可以帮你了。所以,有两件事你应该做,使它尽可能干净,并避免以后的错误

现在,您的代码在全局范围内。除非真的没有其他选择,否则你应该避免这样做。所以,您应该做的第一件事是创建一个用于保存此数据的静态类。也许是这样的

class LabelHelper(object):
    card_m = {}
    label_count = None

    @classmethod
    def startup(cls):
        url = "https://api.trello.com/1/boards/OIeEN1vG/cards"
        query = {
            'key': 'e8cac9f95a86819d54194324e95d4db8',
            'token': 'aee28b52f9f8486297d8656c82a467bb4991a1099e23db539604ac35954d5633'
        }

        response = requests.request(
            "GET",
            url,
            params=query
        )
        data = response.json()
        card_labels_string = list(chain.from_iterable([d['labels'] for d in data]))
        card_labels = [c["color"] for c in card_labels_string]
        cls.label_count = dict((i, card_labels.count(i)) for i in card_labels)

        cards = dict(zip([d['name'] for d in data], [d['shortLink'] for d in data]))
        for key, value in cards.items():
            url_card = "https://api.trello.com/1/cards/{}/members".format(value)
            res = requests.request(
                "GET",
                url_card,
                params=query
            )
            names = [f['fullName'] for f in res.json()]
            cls.card_m.update({key: names})
            
    @classmethod
    def get_data(cls):
        return cls.label_count, cls.card_m
现在我们需要在这个类中运行
startup
方法,然后再通过
app.run
启动flask。所以它可以看起来像这样

if __name__ == '__main__':
    LabelHelper.startup()
    app.run("your interface", your_port)
from labelhelper import LabelHelper

def some_function():
    label_count, card_m = LabelHelper.get_data()
现在我们已经用数据填充了这些静态变量。现在,您只需将该静态类导入到您想要的任何文件中,然后调用
get\u data
,就可以得到您想要的。所以像这样

if __name__ == '__main__':
    LabelHelper.startup()
    app.run("your interface", your_port)
from labelhelper import LabelHelper

def some_function():
    label_count, card_m = LabelHelper.get_data()

from import labelhelper中的仅供参考,如果原因是,通常您会命名包含该类的文件
labelhelper.py

,您需要澄清传输的含义。您将如何使用标签计数和卡片计数?回答这两个问题,我也许能帮上忙。但是我不知道你想达到什么样的目的,所以我帮不了你。我的意思是我想从这个python文件中获取card_m和label_计数值,并通过flask app python将其打印到我的HTML文件中。我的意思是我想在我的app.py(一个flask应用程序)中获取card_m和label_计数,我想打印它或在我的HTML文件中显示它。我想使用它在另一个python文件中,谢谢!!!!对不起,我的英语不好。但是非常感谢!欢迎光临。祝你的项目好运。请将我的回答标记为已接受,以便此问题可以被视为已回答。:)