댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
Python
2013.05.07 16:30
Python 문자열 관련 함수
조회 수 24661 댓글 0
1. 시퀀스 자료형 : 문자열, 리스트, 튜플 >>> s = 'abcdef' # 문자열 >>> l = [100, 200, 300] # 리스트 >>> s[0] # 참조 'a' >>> s[1] 'b' >>> s[-1] 'f' >>> l[1] 200 >>> l[1] = 900 # 치환 2) 슬라이싱(Slicing) : [s:t] >>> s = 'abcdef' >>> l = [100, 200, 300] >>> s[1:3] # 1번 위치와 3번 위치 사이를 나타냄 'bc' >>> s[1:] # 1부터 끝까지 'bcdef' >>> s[:] # 처음부터 끝까지 'abcdef' >>> s[-100:100] # 범위를 넘어서면 범위 내의 값으로 자동 처리 'abcdef' >>> l[:-1] # 맨 오른쪽 값을 제외하고 모두 [100, 200] >>> s[::2] # 2칸 단위로 'ace' >>> s[::-1] # 거꾸로 'fedcba' 3) 연결하기(Concatenation) : + >>> s = 'abc' + 'def' >>> s 'abcdef' >>> L = [1, 2, 3] + [4, 5, 6] >>> L [1, 2, 3, 4, 5, 6] 4) 반복하기(Repetition) : * >>> s = 'Abc' >>> s * 4 'AbcAbcAbcAbc' >>> L = [1, 2, 3] >>> L * 2 [1, 2, 3, 1, 2, 3] 5) 멤버십 테스트(Membership Test) : in >>> t = (1, 2, 3, 4, 5) >>> 2 in t True >>> 10 not in t True >>> 'ab' in 'abcd' # 문자열인 경우 부분 문자열 확인 가능 True 6) 길이 정보 : len >>> l = [1, 2, 3] >>> len(l) 3 2. 문자열 정의
4) 문자열 연산(시퀀스 자료형의 특징 참조) >>> str1 = 'Firtst String' >>> str1[0] = 'f' # 변경 불가능(Immutable) 자료형이므로 에러 발생 Traceback (most recent call last): File "<pyshell#54>", line 1, in <module> str1[0] = 'f' TypeError: 'str' object does not support item assignment 3. 문자열 변경 >>> s = 'spam and egg' >>> s = s[:5] + 'cheese' + s[5:] >>> s 'spam cheeseand egg' 4. 문자열 포매팅(Formatting) : %s, %r, %c, %d, %i, %u, %o, %x, %X, %e, %E, %f, %g, %G >>> format = 'name = %s, age = %s' >>> format % ('gslee', 24) 'name = gslee, age = 24' >>> "%s -- %s -- %d -- %f -- %e" % ((1, 2), [3, 4, 5], 5, 5.3, 101.3) '(1, 2) -- [3, 4, 5] -- 5 -- 5.300000 -- 1.013000e+002' >>> print '%(이름)s -- %(전화번호)s' % {'이름': '이강성', '전화번호': 5284} 이강성 -- 5284 5. 문자열 메쏘드 >>> # 대ㆍ소문자로 변환 관련 메쏘드 Traceback (most recent call last): 6.. string 모듈 >>> import string >>> d = string.letters + string.digits >>> d 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789' >>> userid = raw_input('your id : ') your id : creaplz510 >>> for ch in userid: if ch not in d: print 'invalid user id' break 7. 유니 코드 >>> unicode('한글', 'cp949') # 인코딩을 명시적으로 알려주어야 함 u'\ud55c\uae00' >>> unicode('한글', 'cp949').encode('utf-8') # 'utf-8' 코드로 변환 '\xed\x95\x9c\xea\xb8\x80' >>> len('한글과 세종대왕') 15 >>> len(unicode('한글과 세종대왕', 'mbcs')) 8 >>> u = unicode('한글과 세종대왕', 'mbcs') >>> print u[0] 한 >>> print u[1] 글 >>> ord('A') # 문자 'A'의 ASCII 코드값 65 >>> chr(65) # 코드 65에 해당하는 문자 'A' >>> ord(unicode('가', 'cp949')) 44032 >>> hex(ord(unicode('가', 'cp949'))) '0xac00' >>> print unichr(0xac00) 가 >>> print unichr(0xd7a3) 힣 8. 문서 문자열 : 도움말 사용 # file : docstring.py ''' Module __doc__ string line1 line2 ''' class Ham: "Ham class __doc__ string" def func(self): "Ham class func __doc__ string" pass >>> import docstring >>> print docstring.__doc__ Module __doc__ string line1 line2 >>> print docstring.Ham.__doc__ Ham class __doc__ string >>> print docstring.Ham.func.__doc__ Ham class func __doc__ string Dreamy의 코드 스크랩내가 모으고 내가 보는
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5