에 사용 "모든 경우에"왜이 일파이썬
for td in alltd:
if "style3" in td["class"] or "style4" in td["class"] or "style1" in td["class"]:
td["class"] = "s1"
이되지?
for td in alltd:
if all(x in td["class"] for x in ("style3", "style4", "style1")):
td["class"] = "s1"
'all()'을 사용하면 모든 문장 사이에 'and'를 넣는 것과 같기 때문입니다. 위의 if 문의 동작을 복제하려면'any()'를 사용하십시오. –
'all'을 사용하기 위해서는'any' 표현식을 무효화하고 수량 한정자에 대해 부정을 배포해야합니다 :'not all (x는 td [ "class"]에 없습니다 ...). 이 경우 어리석은 일 이겠지만 테스트에서 논리적 인 부정 (예 :'! =')이 표시되면 양식을 전환하는 것이 더 간단 할 수 있습니다. – eryksun