세 번째 문자에서 문자열 끝까지 새 문자열을 가져오고 싶습니다(예: myString[2:end]
. 두 번째 부분을 생략하면 '끝까지'를 의미하고 첫 번째 부분을 생략하면 처음부터 시작합니까?
파이썬
[python] Python에서 문자열의 하위 문자열을 얻으려면 어떻게 해야 합니까?
zooheon
2022. 8. 28. 20:37
반응형
>>> x = "Hello World!"
>>> x[2:]
'llo World!'
>>> x[:2]
'He'
>>> x[:-2]
'Hello Worl'
>>> x[-2:]
'd!'
>>> x[2:-2]
'llo Worl'
파이썬은 이 개념을 "슬라이싱"이라고 부르며 단순한 문자열 이상에서 작동합니다. 여기 에서 포괄적인 소개를 살펴보십시오 .
다른 사람이 언급하지 않았기 때문에 완전성을 위해. 배열 슬라이스의 세 번째 매개변수는 단계입니다. 따라서 문자열을 뒤집는 것은 다음과 같이 간단합니다.
some_string[::-1]
또는 대체 문자를 선택하는 것은 다음과 같습니다.
"H-e-l-l-o- -W-o-r-l-d"[::2] # outputs "Hello World"
문자열을 앞뒤로 이동하는 기능은 시작 또는 끝에서 슬라이스를 배열할 수 있는 일관성을 유지합니다.
일반적으로 Substr()(예: PHP 및 Perl)은 다음과 같이 작동합니다.
s = Substr(s, beginning, LENGTH)
따라서 매개변수는 beginning
및 LENGTH
입니다.
그러나 Python의 동작은 다릅니다. 시작과 END(!) 다음에 하나가 필요합니다. 이것은 초보자가 발견하기 어렵습니다. 따라서 Substr(s, 시작, LENGTH)의 올바른 대체는 다음과 같습니다.
s = s[ beginning : beginning + LENGTH]
반응형