我是Python的新手,我正在学习其他人的代码并将其融入到我的代码中,因此我为自己的丑陋道歉。你知道吗
我有一个变量random_collector = ''
。随着代码的继续,我将random_collector
设置为非空字符串。最后,我为random_collector
设置了一个返回函数。问题是:它将返回空白字符串还是非空白字符串?你知道吗
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\u 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)
随机收集器返回的值将是返回时存储在该变量中的任何值。如果代码到达并执行其中一行代码,将值赋给随机\u收集器,则返回值。否则,它将保留您给它的初始值(空字符串)。你知道吗
对于第二个问题,使用从
random.choice(na_collector)
返回的值调用lm\u add\u api。你知道吗需要注意的是,Python与其他命令式编程语言一样,在代码执行时更改状态,并维护更新的状态值。因此,每当您更改变量的值时,它都会保留更新后的值。代码如下:
只需打印“4”。所有以前的作业都会被覆盖。你知道吗
相关问题 更多 >
编程相关推荐