회원 로그인
정보기억 정보기억에 체크할 경우 다음접속시 아이디와 패스워드를 입력하지 않으셔도 됩니다.
그러나, 개인PC가 아닐 경우 타인이 로그인할 수 있습니다.
PC를 여러사람이 사용하는 공공장소에서는 체크하지 마세요.
소셜네트워크 서비스를 통해서 로그인하시면 별도의 로그인 절차없이 회원서비스를 이용하실 수 있습니다.


최근 게시물

1.노션에서 작성 중

1.노션에서 작성 중

개편하기 전까지 노션에서 작성 중

2024.04.04//read more

2.ChatGPT

2.ChatGPT

OpenAI로 대규모 언어 모델대화형...

2023.03.16//read more

3.노코딩 게임 엔진 - 빌..

3.노코딩 게임 엔진 - 빌..

빌드 지원안드로이드iOS윈도우즈특이사...

2023.03.14//read more

4.(완료) 미접속 회원 정..

4.(완료) 미접속 회원 정..

[완료] 36명의 회원을 정리하였습니...

2023.02.16//read more

5.매뉴얼 플러스 - 전자제..



안정적인 DNS 서비스 DNSEver
DNS Powered by DNSEver.com


Python for Maya - 5. 리스트 자료 다루기 1

artsOne | 2008.02.22 20:27 | 조회 3925
Digital Dream ( http://cafe.naver.com/digitaldream ) 카페의 'Maya Python 시작하기'의
기반으로 복습하는 차원에서 재정리한 것입니다.


리스트(list)는 python의 자료형 중 가장 많이 사용되고 쉽게 사용할 수 있는 sequence(순서대로 저장되는)이면서 형변환이 가능한 자료형이다.
mel은 배열(array)만을 사용하여 자료들을 저장하고 빼내어 사용하지만 python에서는 여러 자료형을 제공한다.



선택한 object 자료를 변수 sel_에 저장한다.
import maya.cmds as cmd
sel_ = cmd.ls(sl=1)    # 또는 sel_ = cmd.ls(sl=True)와 같다.
저장된 자료를 확인하자.
sel_
# Result: [u'nurbsSphere1', u'nurbsSphere2', u'nurbsSphere3', u'nurbsSphere4', u'nurbsSphere5', u'nurbsSphere6', u'nurbsSphere7', u'nurbsSphere8', u'nurbsSphere9', u'nurbsSphere10', u'nurbsSphere11', u'nurbsSphere12', u'nurbsSphere13', u'nurbsSphere14', u'nurbsSphere15', u'nurbsSphere16', u'nurbsSphere17', u'nurbsSphere18', u'nurbsSphere19', u'nurbsSphere20'] #
20개의 자료가 sel_에 저장되었다.

리스트는 [ ] 기호를 사용하며, 리스트명[숫자 또는 '문자열'] 형태를 갖는다.

개별적으로 선택되는 인덱싱(indexing) 자료 추출 방법으로 자료[n]과 자료[-n]로 사용된다.
이제 저장된 자료들을 추출 및 선택해 보자.

리스트에 저장된 object를 선택해 보자


cmd.select(sel_[0])
sel_[0] 번째 리스트는 첫번째 공간에 있는 자료이므로 nurbsSphere1가 선택되었다. (자료형 모두가 0부터 자료가 들어간다.)

# 라면...
#12번째 공간에는 nurbsSphere13 자료가 들어가 있다.
sel_[12]
# Result: nurbsSphere13 #

cmd.select(sel_[-1]) 
sel_[-1]은 자료 뒤의 첫번째 공간을 선택하게 된다.
sel_[-12]
# Result: nurbsSphere9 #  뒤에서 12번째 공간의 자료가 저장되어 있는 걸 확인할 수 있다.
이젠 다수의 자료들을 다룰 수 있는 슬라이싱(slicing) 방법으로 추출해 보자.


cmd.select(sel_[:10])
앞에서 10번째까지 자료를 선택하였다. 개별적인 인덱싱 방법과 혼돈될 수 있지만 인덱스는 자료의 위치, 슬라이싱은 물리적인(?) 갯수 또는 위치로 생각하면 된다.

인덱스와 마찮가지로 슬라이싱도 자료 뒷부분 부터 선택도 가능하다.


cmd.select(sel_[-10:])
중간의 부분을 선택하려면..


cmd.select(sel_[5:12])
두개씩 건너뛰게 하려면...


cmd.select(sel_[::3])
슬라이싱 자료 추출은 리스트명[시작번호:끝번호:간격수] 형태이다.


cmd.select(sel_[2:17:2])
2번째~17번째 위치에 저장된 자료들 중 하나 건너씩 선택된다.

주의할 점은 자료형의 공간(인덱싱)과 위치(슬라이싱)를 구분을 잘 해야 한다.

───────────────────────────────────────────────
source : http://cafe.naver.com/digitaldream/444 - 'Maya Python 시작하기' 5) 자료 다루기 - 1

466개(18/24페이지)
마야
번호 제목 글쓴이 조회 날짜
공지 마야 뷰포트 네비게이션 팁 푸딩뱃살 42796 2020.04.06 17:22
공지 Maya 버전 별 Python 버전 푸딩뱃살 64110 2014.01.08 17:59
124 [FX] Lesson 1: Creating nCloth collisions Step 2 사진 첨부파일 artsOne 2165 2008.04.13 17:28
123 [FX] Lesson 1: Creating nCloth collisions Step 1 사진 첨부파일 artsOne 2404 2008.04.13 16:23
122 [참고] Expression Manual 첨부파일 artsOne 2243 2008.04.13 02:44
121 [Script] MEL 기초 #01 - 기초 (자료형) artsOne 3959 2008.04.10 00:28
120 [Base] 선택 우선순위 첨부파일 artsone 2170 2008.04.09 02:47
119 [Script] Python for Maya - 10. polygon vertex random move 사진 첨부파일 artsOne 4619 2008.04.06 23:44
118 [Rigging] Deform > Edit Membership Tool 첨부파일 artsone 2636 2008.04.05 02:28
117 [Rigging] Deform > Wire 활용 artsone 2243 2008.04.05 02:01
116 [Animation] Bake Simulation artsone 1879 2008.04.01 23:04
115 [Rigging] 로프 Stretch Rigging 사진 첨부파일 artsone 2380 2008.03.31 21:40
114 [Rigging] Bouncing Ball Rigging 첨부파일 artsone 2368 2008.03.20 23:29
113 [Rigging] bind 후 object가 2배로 움직이는 현상 막기 첨부파일 artsone 2126 2008.03.08 03:28
112 [Rigging] Lattice와 Rigid bind를 이용한 skinning artsone 2641 2008.03.08 03:18
111 [Script] Python for Maya - 9. polysmooth 자동 설정 (format 변환) 사진 첨부파일 artsOne 4421 2008.03.05 01:18
110 [Script] Python for Maya - 8. random 응용 (if문) 사진 첨부파일 artsOne 4733 2008.02.27 02:22
109 [Script] Python for Maya - 7. random (for문) 사진 첨부파일 artsone 4755 2008.02.26 01:37
108 [Script] Python for Maya - 6. 리스트 자료 다루기 2 사진 첨부파일 artsOne 3836 2008.02.23 17:17
>> [Script] Python for Maya - 5. 리스트 자료 다루기 1 사진 첨부파일 artsOne 3926 2008.02.22 20:27
106 [Script] Python for Maya - 4. set (집합) 사진 첨부파일 artsOne 4830 2008.02.22 17:49
105 [Script] Python for Maya - 3. pickle (지속 모듈-파일 관리) 사진 첨부파일 artsOne 4806 2008.02.21 01:57