以下はpython関数です。すべての関数は、ほとんどのPython関数(200以上の関数)で同じ繰り返し行を使用します。Python関数の繰り返し行を削除する方法
私はそれをモジュールとして書いて、モジュールとしてインポートすることを計画しました。
以下は、すべての機能で繰り返される行です。
def abc(username, password, host, a, b, c, d, e):
# VARIABLES THAT NEED CHANGED
# Create instance of SSHClient object
remote_conn_pre = paramiko.SSHClient()
# Automatically add untrusted hosts (make sure okay for security policy in your environment)
remote_conn_pre.set_missing_host_key_policy(
paramiko.AutoAddPolicy())
# initiate SSH connection
remote_conn_pre.connect(host, username=username, password=password, look_for_keys=False, allow_agent=False)
print "SSH connection established to %s" % host
# Use invoke_shell to establish an 'interactive session'
remote_conn = remote_conn_pre.invoke_shell()
# Send some commands and get the output
第2の機能例:上記の関数で
def xyz(username, password, host, a, b):
# VARIABLES THAT NEED CHANGED
# Create instance of SSHClient object
remote_conn_pre = paramiko.SSHClient()
# Automatically add untrusted hosts (make sure okay for security policy in your environment)
remote_conn_pre.set_missing_host_key_policy(
paramiko.AutoAddPolicy())
# initiate SSH connection
remote_conn_pre.connect(host, username=username, password=password, look_for_keys=False, allow_agent=False)
print "SSH connection established to %s" % host
# Use invoke_shell to establish an 'interactive session'
remote_conn = remote_conn_pre.invoke_shell()
# Send some commands and get the output
は、別のスクリプトで呼び出しています。 注:以下の行は、機能のたびに繰り返されていません。
と、関数に異なる引数(引数の数が異なる)で記述されたすべての関数です。
すべての機能に重複行を削除し、それが何の問題もなく動作させるためにどのようdef xyz(username, password, host, a, b):
- 以下のような例。
上記の関数は、ssh接続の確立に使用されます。paramikoを使用します。
"変更が必要なもの"とは具体的には何ですか? – jordanm