H5W3
当前位置:H5W3 > 其他技术问题 > 正文

自定义函数调用,总是说没定义?

def datas(content_all):
    datas = {
        "msgtype": "text",
        "text": {"content": content_all}, "at": {"atMobiles": [], "isAtAll": False}
    }
    String_textMsg = json.dumps(datas)
    req = requests.post(Ding_url, data=String_textMsg, headers=Ding_headers).text
    print(req)
    print('发送内容:', String_textMsg)
    return String_textMsg

datas(String_textMsg)

以上代码,自定义了一个 datas,在最后返回了 String_textMsg,可是为啥调用函数的时候,String_textMsg 是未定义呢?如果不是全局变量,String_textMsg 这个变量要怎么被调用呢?

还有比如 datas(content_all) 中的 content_all,是上一个变量 return 的,但是在 datas 就可以用,如果直接调用 datas(content_all) 就不行….

回答:

def datas(content_all)
    .....
    return String_textMsg

你定义了一个叫datas的函数,你将返回值的变量名设置为String_textMsg

但是你没有调用赋值啊,外层作用域里没有叫String_textMsg的变量

如果我没理解错,你可能是想:

String_textMsg = datas(...) # (我也不知道这个...里面该是什么)
datas(String_textMsg)

回答:

你这是搞了个递归吗 ?
你调用datas(String_textMsg) 里面的这个参数初始化了吗?

本文地址:H5W3 » 自定义函数调用,总是说没定义?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址