私はPythonを初めて使いました。私は他の人のコードを覚えて、それを私の中に組み込んでいますので、醜さに対する私の謝罪です。Return関数、本当に混乱しました
この変数はrandom_collector = ''
です。コードが進むにつれて、私はrandom_collector
を空白でない文字列に設定しました。最後に、random_collector
のReturn関数を設定しました。質問は:空の文字列または空でない文字列を返しますか?
def add_csv():
random_collector = ''
sitevalue = ''
path = raw_input('path to csv file: ')
with open(path, 'r') as ifile:
reader = csv.reader(ifile)
reader.next()
for row in reader:
deviceip = row[1]
displayname = row[0]
snmpc = row[2]
alert_priority = row[3]
monitoring_templates = row[4]
pd_alert_service = row[5]
site_code = row[6]
team_owner = row[7]
if displayname_pattern.match(displayname):
cut_displayname = displayname[0:4]
print cut_displayname
if cut_displayname in site:
sitevalue = site.get(cut_displayname)
cut_office = cut_displayname[0:3]
if cut_office in na_office:
random_collector = random.choice(na_collector)
lm_add_api(deviceip, displayname, random_collector, sitevalue, snmpc, alert_priority, monitoring_templates, pd_alert_service, site_code, team_owner)
time.sleep(5)
elif cut_office in apac_office:
random_collector = random.choice(apac_office)
lm_add_api(deviceip, displayname, random_collector, sitevalue, snmpc, alert_priority, monitoring_templates, pd_alert_service, site_code, team_owner)
elif cut_office in emea_office:
random_collector = random.choice(emea_office)
lm_add_api(deviceip, displayname, random_collector, sitevalue, snmpc)
else:
print 'Site format is not a recongnized'
time.sleep(2)
add()
else:
print 'Double check the site code, device group not found in Logic Monitor'
time.sleep(2)
add()
return deviceip, displayname, random_collector, sitevalue, snmpc, alert_priority, monitoring_templates, pd_alert_service, site_code, team_owner
このコードブロックで私の混乱の第二部では、私はlm_add_api(deviceip, displayname, random_collector, sitevalue, snmpc, alert_priority, monitoring_templates, pd_alert_service, site_code, team_owner)
と呼ばれる別の関数を呼び出すことだし、それが変数random_collectorを取っています。変数から戻り値を取っているのですか、結果はrandom_collector = random.choice(na_collector)
ですか?
if cut_office in na_office:
random_collector = random.choice(na_collector)
lm_add_api(deviceip, displayname, random_collector, sitevalue, snmpc, alert_priority, monitoring_templates, pd_alert_service, site_code, team_owner)
あなたが返すものを知りたいのであれば、それを実行して見ないのはなぜですか? –