我有一个循环来获取公司名称,并将它们存储在数组中。虽然有时公司名称会被贴两次,我不想写到文件里。在
我检查名称是否不在数组中,但它总是返回false,即使我打印出数组中所有的值都在那里。在
if phone != None:
websiteArr.append(companyName)
#print(websiteArr)
if companyName not in websiteArr:
f.write(re.sub('\s+',' ',str(companyName)) + ',' + phone.lstrip())
print(companyName)
companyName = ''
phone = ''
else:
print('errorr')
print(websiteArr)
else:
continue
在检查列表中是否存在该项之前,不应将该项附加到列表中:
或者,使用字典:
^{pr2}$您会注意到我没有费心检查是否存在,因为python字典的键/值对可以延迟地创建,这意味着如果您在赋值语句中引用一个键,即使它还不存在,它也会存在。在
以上相当于:
但是如果密钥已经存在,
add
方法将引发错误,而lazy方法只是在赋值时重写现有的键/值对。对于获取值,您可能需要检查是否存在键,除非您正在迭代元组键/值对。在相关问题 更多 >
编程相关推荐