Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何访问回调调用的函数和变量?_Python_Python 3.x_Api_Callback_Telegram Bot - Fatal编程技术网

Python 如何访问回调调用的函数和变量?

Python 如何访问回调调用的函数和变量?,python,python-3.x,api,callback,telegram-bot,Python,Python 3.x,Api,Callback,Telegram Bot,我希望能够从函数中打印“Message\u From\u User”的值。我该怎么做 我尝试使用return,但它要求我调用函数,例如start(),但我不能这样做 回调函数当前正在调用该函数,因为这是运行此代码的唯一方法。代码正在使用库 我已经提供了一个bot令牌,所以运行这段代码所要做的就是安装python电报bot库 from telegram.ext import Updater from telegram.ext import MessageHandler, Filters upda

我希望能够从函数中打印“Message\u From\u User”的值。我该怎么做

我尝试使用return,但它要求我调用函数,例如start(),但我不能这样做

回调函数当前正在调用该函数,因为这是运行此代码的唯一方法。代码正在使用库

我已经提供了一个bot令牌,所以运行这段代码所要做的就是安装python电报bot库

from telegram.ext import Updater
from telegram.ext import MessageHandler, Filters

updater = Updater(token='<MY-TOKEN>', use_context=True)#Please enter your token

dispatcher = updater.dispatcher
Message_From_User = "123"
def start(update, context):
    global Message_From_User
    Message_From_User = update.message.text # How do i access this var from outside the function


dispatcher.add_handler(MessageHandler(Filters.text, start)) #Callback which requires 2 arguments

updater.start_polling()
print(Message_From_User)
来自telegram.ext导入更新程序
从telegram.ext导入MessageHandler,过滤器
updater=updater(令牌='',使用上下文=True)#请输入您的令牌
dispatcher=updater.dispatcher
来自用户的消息=“123”
def启动(更新、上下文):
来自用户的全局消息
Message_From_User=update.Message.text#如何从函数外部访问此变量
dispatcher.add_处理程序(MessageHandler(Filters.text,start))#回调,需要2个参数
updater.start_polling()
打印(来自用户的消息)

编辑:我希望变量“Message\u From\u User”可以从任何地方访问,甚至在我导入代码时可以从其他文件访问。

您希望从何处打印
Message\u From\u User
?它是一个全局变量,应该在程序中的任何位置都可用。如果不调用该函数,则该代码不会运行,并且不会访问
update.message.text
。您可以随时打印来自用户的
消息,\u
,但它不会被更新。您是否也可以验证回调在您期望的时候运行?@DYZ,我希望它可以从程序中的任何位置访问,也可以在导入时从其他文件访问。也感谢您的评论,我真的很感激。:)@TigerhawkT3我正在使用回调运行代码。