*. 코드 분석용 형식없는 개인공부.
**. 표기되지 않은 자료의 출처는 Abaqus Scripting User's Manual (v6.8)에서 따옴.
시퀀스 연산법
파이썬에서는 시퀀스를 연산할 수 있는 툴을 제공한다.
Slicing [슬라이싱]
시퀀스는 더 작은 시퀀스들로 나눌수 있으며 이러한 연산을 슬라이싱이라고 한다. [m:n] 크기의 시퀀스라면 m 에서 n--1까지의 결과를 내보낼 수 있다. m의 기본값은 0이며 n의 기본값은 시퀀스의 크기이다.
>>> myList = [0,1,2,3,4]
>>> myList[1:4]
[1, 2, 3]
[1:4]로 표현 했지만 슬라이싱에서 n-1까지 처리하므로 실제로는
[1], [2], [3] 까지의 원소만 추출된다.
>>> myString ='linear load'
>>> myString[7:]
'load'
n의 기본값이 시퀀스의 크기이므로 [7:]이라고 표현한 것이나 [7:11]이라고 표현한 것이나 똑같다.
>>> myString[:6]
'linear'
m의 기본값이 0이므로 [:6]으로 표현한 것이나 [0:6]으로 표현한 것이나 똑같다.
시퀀스의 반복
>>> x=(1,2)
>>> x*2
(1, 2, 1, 2)
>>> s = 'Hoop Stress'
>>> s*2
>>> 'Hoop StressHoop Stress'
* 연산자를 사용하면 배수만큼 반복한다.
시퀀스의 길이확인
>>> myString ='linear load'
>>> len(myString)
11
>>> myList = [0,1,2,3,4]
>>> len(myList)
5
시퀀스 연결시키기
>>> a = [0,1]
>>> b = [9,8]
>>> a + b
[0, 1, 9, 8]
>>> test = 'wing34'
>>> fileExtension = '.odb'
>>> test+fileExtension
'wing34.odb'
Range 함수
range() 함수는 정수형 리스트를 포함한 시퀀스를 만들어준다.
아래의 예시를 보면 알기가 쉽다.
>>> range(2,8)
[2, 3, 4, 5, 6, 7]
2부터 8사이의 정수리스트 (8은 제외)
>>> range(4)
[0, 1, 2, 3]
0부터 4개의 정수리스트
>>> range(1,8,2)
[1, 3, 5, 7]
1에서 8사이의 정수리스트를 2씩 증가시킴
시퀀스 타입의 변경
리스트나 튜플로 변경가능
>>> myString='noise'
>>> myList = list(myString) #Convert a string to a list.
>>> myList[0] = 'p'
>>> myList
['p', 'o', 'i', 's', 'e']
>>> myTuple = tuple(myString) #Convert a string to a tuple.
>>> print myTuple
('n', 'o', 'i', 's', 'e')
파이썬에서는 시퀀스를 연산할 수 있는 툴을 제공한다.
Slicing [슬라이싱]
시퀀스는 더 작은 시퀀스들로 나눌수 있으며 이러한 연산을 슬라이싱이라고 한다. [m:n] 크기의 시퀀스라면 m 에서 n--1까지의 결과를 내보낼 수 있다. m의 기본값은 0이며 n의 기본값은 시퀀스의 크기이다.
>>> myList = [0,1,2,3,4]
>>> myList[1:4]
[1, 2, 3]
[1:4]로 표현 했지만 슬라이싱에서 n-1까지 처리하므로 실제로는
[1], [2], [3] 까지의 원소만 추출된다.
>>> myString ='linear load'
>>> myString[7:]
'load'
n의 기본값이 시퀀스의 크기이므로 [7:]이라고 표현한 것이나 [7:11]이라고 표현한 것이나 똑같다.
>>> myString[:6]
'linear'
m의 기본값이 0이므로 [:6]으로 표현한 것이나 [0:6]으로 표현한 것이나 똑같다.
시퀀스의 반복
>>> x=(1,2)
>>> x*2
(1, 2, 1, 2)
>>> s = 'Hoop Stress'
>>> s*2
>>> 'Hoop StressHoop Stress'
* 연산자를 사용하면 배수만큼 반복한다.
시퀀스의 길이확인
>>> myString ='linear load'
>>> len(myString)
11
>>> myList = [0,1,2,3,4]
>>> len(myList)
5
시퀀스 연결시키기
>>> a = [0,1]
>>> b = [9,8]
>>> a + b
[0, 1, 9, 8]
>>> test = 'wing34'
>>> fileExtension = '.odb'
>>> test+fileExtension
'wing34.odb'
Range 함수
range() 함수는 정수형 리스트를 포함한 시퀀스를 만들어준다.
아래의 예시를 보면 알기가 쉽다.
>>> range(2,8)
[2, 3, 4, 5, 6, 7]
2부터 8사이의 정수리스트 (8은 제외)
>>> range(4)
[0, 1, 2, 3]
0부터 4개의 정수리스트
>>> range(1,8,2)
[1, 3, 5, 7]
1에서 8사이의 정수리스트를 2씩 증가시킴
시퀀스 타입의 변경
리스트나 튜플로 변경가능
>>> myString='noise'
>>> myList = list(myString) #Convert a string to a list.
>>> myList[0] = 'p'
>>> myList
['p', 'o', 'i', 's', 'e']
>>> myTuple = tuple(myString) #Convert a string to a tuple.
>>> print myTuple
('n', 'o', 'i', 's', 'e')
'2FeRed`s 공돌이생활 > ABAQUS' 카테고리의 다른 글
[아바쿠스] 아바쿠스 CAE 튜토리얼 (0) | 2010.01.05 |
---|---|
[아바쿠스] *Restart 명령어 사용방법 (ABAQUS/STANDARD) (0) | 2009.12.17 |
[아바쿠스] 경계조건/하중의 좌표계 변경하기 (0) | 2009.09.19 |
[아바쿠스] 국부좌표계 생성하기 *ORIENTATION (0) | 2009.09.18 |
[아바쿠스] 키워드 레퍼런스 매뉴얼 보는 방법 (0) | 2009.08.24 |
아름다운 인터넷 문화를 위해 댓글을 남겨주세요. -0-;