【发布时间】:2021-09-21 21:30:42
【问题描述】:
所以我知道这个问题已被问过很多次,但我似乎无法 明白我需要做什么 放入 init 定义。当我调用 open_ssh_tunnel 函数时。错误 类型错误:open_ssh_tunnel() 缺少 1 个必需的位置参数:'self'。 任何帮助将不胜感激。
def __init__(self):
???
def open_ssh_tunnel(self, verbose=False):
"""Open an SSH tunnel and connect using a username and password.
:param verbose: Set to True to show logging
:return tunnel: Global SSH tunnel connection
"""
if verbose:
sshtunnel.DEFAULT_LOGLEVEL = logging.DEBUG
global tunnel
tunnel = SSHTunnelForwarder(
(self.ssh_host, 22),
ssh_username= self.ssh_username,
ssh_password= self.ssh_password,
remote_bind_address=('127.0.0.1', 3306)
)
tunnel.start()
【问题讨论】:
-
这能回答你的问题吗? What __init__ and self do in Python?
-
我建议您先探索基本的 oop,然后再尝试学习会使您的工作更加困难的“大块”知识。