Python 문자열은 요소가 문자인 시퀀스 유형입니다. 시퀀스 타입은 요소들이 순차적으로 배치되는 자료구조이기 때문에 특정 문자를 인덱스로 얻을 수도 있고, 인덱스 범위를 지정해 문자 그룹을 얻을 수도 있다.
>>> ch='abcde' >>> print("ch[0]=",ch[0],"ch[-1]=",ch[-1]) ch[0]= a ch[-1]= e
index는 정수이며 0에서 lne(str)-1까지 범위를 벗어날 수 없습니다. 그렇지 않으면 오류가 발생합니다.
>>> len(ch) 5 >>> ch[5] Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> ch[5] IndexError: string index out of range
문자열을 역순으로 인쇄하세요
def resstr(ch): mid=len(ch) for c in range(mid): print(ch[mid-1-c],end='') >>> resstr('abcde') edcba
sb를 위한 준비 문자열이 반전된 후에는 문자열을 수정할 수 없습니다. 오류 메시지: 'str' 객체는 항목 할당을 지원하지 않습니다.
문자열 샤딩은 주어진 문자열에서 문자열의 일부를 분리하는 것입니다. i, j, k
i는 시작 위치이고 j는 다음과 같은 형식으로 인덱싱될 수 있습니다. 인덱스의 끝 위치이지만 j 위치의 문자열은 포함하지 않습니다. 인덱스 번호가 증가할 때마다 단계 크기는 k
>>> s="hello world" >>> print(s[0:len(s):2]) hlowrd >>> print(s[1:len(s):3],end='---') eood---
인덱스 인덱스이며 0부터 len(str)-1까지 가능합니다. 음수 인덱스를 사용하고 범위는 -n부터 -1까지입니다. 음수 인덱스의 시작 위치는 문자열의 끝입니다.
st='asdfg' print(st[-1:0:-1]) gfds
문자열 조각의 인덱스, 인덱스 i의 시작 위치, 인덱스 j의 끝 위치, 단계 크기 k는 생략 가능하며, i가 생략되면 0 또는 -1부터 시작됩니다. j가 생략되면 마지막 문자열로 끝납니다. k가 생략되면 단계 크기는 1이 됩니다.
st='asdfghjk' print(st[:0:-1]) print(st[2::2]) print(st[0:5:]) kjhgfds dgj asdfg
문자열 관련 연산, 연결 연산, 논리 연산, 문자열 처리 기능을 수행할 수 있습니다.
st1='abc' st2="def" print("{0}+{1}={2}".format(st1,st2,st1+st2)) print("{0:s}*5={1}".format(st1,st1*5)) abc+def=abcdef abc*5=abcabcabcabcabc
문자열 메서드
문자열은 변경할 수 없습니다. 문자열이 변경되면 새 문자열이 반환됩니다. Python 문자열은 클래스로 간주될 수 있습니다.
st1='abcDEF' print("{0:s}.upper()={1:s}".format(st1,st1.upper())) print("{0:s}.lower()={1:s}".format(st1,st1.lower())) print("{0:s}.swapcase()={1:s}".format(st1,st1.swapcase())) abcDEF.upper()=ABCDEF abcDEF.lower()=abcdef abcDEF.swapcase()=ABCdef st1='abcDEFasde' print("a count={0}".format(st1.count('a'))) print("{0} start with {1} is {2} ".format(st1,'abc',st1.startswith('abc'))) print("{0} end with {1} is {2} ".format(st1,'de',st1.startswith('de'))) a count=2 abcDEFasde start with abc is True abcDEFasde end with de is False st1=' abcDEFasde' print("{0} replace 123 :{1}".format(st1,st1.replace('abc','123'))) print( "{0} remove {1} left char---{2}".format(st1,' ',st1.strip())) abcDEFasde replace 123 : 123DEFasde abcDEFasde remove left char---abcDEFasde
문자열 메서드가 너무 많아서 더 이상 다루지 않겠습니다. 흥미롭지 않습니다.
바이트 객체
파이썬에서 바이트는 문자열과 다릅니다. 변경할 수 없는 일련의 유니코드 문자로 구성된 시퀀스를 문자열이라고 합니다. 0에서 255 사이의 불변 인코딩을 사용하는 일련의 문자열로 구성된 시퀀스를 바이트 개체라고 합니다.
by=b'abc &' print(type(by)) print("length=",len(by)) <class 'bytes'> length= 5
문자열 앞에 'b'를 추가하여 바이트 개체를 정의합니다. 각 문자열은 ASCII 문자 등일 수 있습니다. len() 함수를 사용하여 바이트 개체의 길이를 계산할 수 있습니다.
ch=input('输入几个数字逗号隔开:') d=ch.split(',') print(d) sum=0 for num in d: sum+=float(num) print("ths sum=",sum) 输入几个数字逗号隔开:2.2,3.3,5.5,6.8 ['2.2', '3.3', '5.5', '6.8'] ths sum= 17.8
관련 추천:
Python3 문자열의 다양한 내장 함수에 대한 자세한 설명
위 내용은 파이썬 문자열에 대한 간단한 토론의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!