금요일에 Python을 사용하기 시작 했으므로 저는 꽤 기초적인 레벨에 있습니다. 몇 개의 레이어가있는 .mdx를 만들고 싶습니다. 특정 명명 된 인스턴스를 한 번에초심자 - Python 2.7.2, ArcGIS 10.1 다중 '또는'조건, 동일한 동작
그래서 '여러개'또는 '여러개'로 레이어를 선택하고 ToC에서 제거 (디스크에서 삭제하지 않음)하고 싶습니다. 아래 'if'라인 중 어느 것도 작동하지 않습니다.
# Remove source features from TOC
for lyr in arcpy.mapping.ListLayers(mxd, "", df):
if (lyr.name == "name1") or (lyr.name() == "name2") or (lyr.name() == "name3"
if (lyr.name == ("name1" or "name2" or "name3"):
arcpy.mapping.RemoveLayer(df, lyr)
의견을 보내 주셔서 감사합니다.
당신은'무효 syntax'의 오류가 있습니까? 당신은 당신의'if' 둘 모두에 몇몇 오른쪽 괄호를 놓치고 있습니다. 또한 때로는'lyr.name'을하고, 때로는'lyr.name()'을 수행합니다. 어떤거야? – Kevin
lyr.name 또는 lyr.name() - 나는 그렇지 않습니다 - 차이점은 무엇입니까? –
@ Bruce Mitchell : lyr.name은 속성 또는 클래스 변수 중 하나입니다. lyr.name()은 메서드입니다 (잘하면 이름을 반환 함). –