>백엔드 개발 >파이썬 튜토리얼 >필수 파이썬 문자열 메소드 31가지, 모아두길 추천!

필수 파이썬 문자열 메소드 31가지, 모아두길 추천!

王林
王林앞으로
2023-04-12 14:52:081391검색

필수 파이썬 문자열 메소드 31가지, 모아두길 추천!

String은 Python의 기본 데이터 유형이며 거의 모든 Python 프로그램에서 사용됩니다.

1. 슬라이싱, 특정 조건(예: 특정 범위, 인덱스, 분할 값)에 따라 목록 또는 튜플에서 일부 요소 제거

s = ' hello '
s = s[:]
print(s)
#hello
s = ' hello '
s = s[3:8]
print(s)
# hello

2. 제거를 위한 메서드 문자열(기본값은 공백 또는 개행) 또는 문자 시퀀스의 시작과 끝 부분에 지정된 문자입니다.

s = ' hello '.strip()
print(s)
# hello
s = '###hello###'.strip()
print(s)
# ###hello###

strip() 메서드를 사용하면 기본적으로 공백이나 줄 바꿈이 제거되므로 # 기호는 제거되지 않습니다.

아래와 같이 Strip() 메서드에 지정된 문자를 추가할 수 있습니다.

s = '###hello###'.strip('#')
print(s)
# hello

또한, 지정된 내용이 시작과 끝이 아닌 경우 삭제되지 않습니다.

s = ' n t hellon'.strip('n')
print(s)
#
#hello
s = 'n t hellon'.strip('n')
print(s)
#hello

첫 번째 n 앞에 공백이 있으므로 후행 줄 바꿈 문자만 사용됩니다.

strip() 메소드의 마지막 매개변수는 해당 값의 모든 조합을 제거하는 것입니다. 이는 다음 사례에서 볼 수 있습니다.

s = 'www.baidu.com'.strip('cmow.')
print(s)
# baidu

가장 바깥쪽의 첫 번째 및 마지막 문자 매개변수 값은 문자열에서 제거됩니다. 문자 세트에 포함되지 않은 문자열 문자에 도달할 때까지 문자는 앞에서 제거됩니다.

꼬리에서도 비슷한 동작이 발생합니다.

3. lstrip()

문자열 왼쪽에 있는 지정된 문자(기본값은 공백 또는 줄 바꿈) 또는 문자 시퀀스를 제거합니다.

s = ' hello '.lstrip()
print(s)
# hello

마찬가지로 문자 집합에 포함된 왼쪽 문자열을 모두 제거할 수 있습니다.

s = 'Arthur: three!'.lstrip('Arthur: ')
print(s)
# ee!

4.rstrip()

문자열 오른쪽에 있는 지정된 문자(기본값은 공백 또는 줄 바꿈) 또는 문자 시퀀스를 제거합니다.

s = ' hello '.rstrip()
print(s)
#hello

5.removeprefix()

Python3.9에서 접두사를 제거하는 함수입니다.

# python 3.9
s = 'Arthur: three!'.removeprefix('Arthur: ')
print(s)
# three!

strip()과 비교하여 문자 집합의 문자열을 하나씩 일치시키지 않습니다.

6.removesuffix()

Python3.9에서 접미사를 제거하는 함수입니다.

s = 'HelloPython'.removesuffix('Python')
print(s)
# Hello

7.replace()

문자열의 내용을 지정된 내용으로 바꿉니다.

s = 'string methods in python'.replace(' ', '-')
print(s)
# string-methods-in-python
s = 'string methods in python'.replace(' ', '')
print(s)
# stringmethodsinpython

8. re.sub()

re는 정규 표현식이고, sub는 대체(교체)를 의미합니다.

re.sub는 상대적으로 복잡한 대체입니다.

import re
s = "stringmethods in python"
s2 = s.replace(' ', '-')
print(s2)
# string----methods-in-python
s = "stringmethods in python"
s2 = re.sub("s+", "-", s)
print(s2)
# string-methods-in-python

replace()와 비교하여 교체 작업에 re.sub()를 사용하는 것이 실제로 더 발전된 방법입니다.

9.split()

은 문자열을 분할하고 최종 결과는 목록입니다.

s = 'string methods in python'.split()
print(s)
# ['string', 'methods', 'in', 'python']

구분 기호를 지정하지 않으면 기본적으로 공백으로 구분됩니다.

s = 'string methods in python'.split(',')
print(s)
# ['string methods in python']

또한 문자열이 분리되는 횟수를 지정할 수도 있습니다.

s = 'string methods in python'.split(' ', maxsplit=1)
print(s)
# ['string', 'methods in python']

10.rsplit()

오른쪽부터 문자열을 구분합니다.

s = 'string methods in python'.rsplit(' ', maxsplit=1)
print(s)
# ['string methods in', 'python']

11.join()

string.join(seq). 문자열을 구분 기호로 사용하여 seq의 모든 요소(문자열 표현)를 새 문자열로 결합합니다.

list_of_strings = ['string', 'methods', 'in', 'python']
s = '-'.join(list_of_strings)
print(s)
# string-methods-in-python
list_of_strings = ['string', 'methods', 'in', 'python']
s = ' '.join(list_of_strings)
print(s)
# string methods in python

12.upper()

문자열의 모든 문자를 대문자로 변환합니다.

s = 'simple is better than complex'.upper()
print(s)
# SIMPLE IS BETTER THAN COMPLEX

13.lower()

문자열의 모든 문자를 소문자로 변환합니다.

s = 'SIMPLE IS BETTER THAN COMPLEX'.lower()
print(s)
# simple is better than complex

14.capitalize()

문자열의 첫 글자를 대문자로 변환합니다.

s = 'simple is better than complex'.capitalize()
print(s)
# Simple is better than complex

15.islower()

는 문자열의 모든 문자가 소문자인지 확인하고, 그렇다면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

print('SIMPLE IS BETTER THAN COMPLEX'.islower()) # False
print('simple is better than complex'.islower()) # True

16.isupper()

는 문자열의 모든 문자가 대문자인지 확인하고, 대문자이면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

print('SIMPLE IS BETTER THAN COMPLEX'.isupper()) # True
print('SIMPLE IS BETTER THAN complex'.isupper()) # False

17, isalpha()

문자열에 문자가 하나 이상 있고 모든 문자가 문자이면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

s = 'python'
print(s.isalpha())
# True
s = '123'
print(s.isalpha())
# False
s = 'python123'
print(s.isalpha())
# False
s = 'python-123'
print(s.isalpha())
# False

18, isnumeric()

문자열에 숫자만 포함되어 있으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

s = 'python'
print(s.isnumeric())
# False
s = '123'
print(s.isnumeric())
# True
s = 'python123'
print(s.isnumeric())
# False
s = 'python-123'
print(s.isnumeric())
# False

19, isalnum()

문자열에 문자가 하나 이상 있고 모든 문자가 문자 또는 숫자인 경우 True를 반환하고, 그렇지 않으면 False를 반환합니다.

s = 'python'
print(s.isalnum())
# True
s = '123'
print(s.isalnum())
# True
s = 'python123'
print(s.isalnum())
# True
s = 'python-123'
print(s.isalnum())
# False

20, count()

지정된 콘텐츠가 문자열에 나타나는 횟수를 반환합니다.

n = 'hello world'.count('o')
print(n)
# 2
n = 'hello world'.count('oo')
print(n)
# 0

21.find()

지정된 내용이 문자열에 포함되어 있는지 확인하고, 포함되어 있으면 시작 인덱스 값을 반환하고, 그렇지 않으면 -1을 반환합니다.

s = 'Machine Learning'
idx = s.find('a')
print(idx)
print(s[idx:])
# 1
# achine Learning
s = 'Machine Learning'
idx = s.find('aa')
print(idx)
print(s[idx:])
# -1
# g

또한 시작 범위를 지정할 수도 있습니다.

s = 'Machine Learning'
idx = s.find('a', 2)
print(idx)
print(s[idx:])
# 10
# arning

22.rfind()

는 find() 함수와 유사하며, 문자열의 마지막 항목을 반환하거나, 일치하는 항목이 없으면 -1을 반환합니다.

s = 'Machine Learning'
idx = s.rfind('a')
print(idx)
print(s[idx:])
# 10
# arning

23.startswith()

문자열이 지정된 내용으로 시작하는지 확인하고, 그렇다면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

print('Patrick'.startswith('P'))
# True

24.endwith()

문자열이 지정된 내용으로 끝나는지 확인하고, 그렇다면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

print('Patrick'.endswith('ck'))
# True

25.partition()

string.partition(str), find()와 Split()의 조합과 비슷합니다.

str이 나타나는 첫 번째 위치부터 시작하여 문자열 string을 3개 요소 튜플(string_pre_str, str, string_post_str)로 나눕니다. string에 str이 포함되어 있지 않으면 string_pre_str==string입니다.

s = 'Python is awesome!'
parts = s.partition('is')
print(parts)
# ('Python ', 'is', ' awesome!')
s = 'Python is awesome!'
parts = s.partition('was')
print(parts)
# ('Python is awesome!', '', '')

26.center()

원래 문자열이 중앙에 배치되고 길이 너비만큼 공백이 추가된 새 문자열을 반환합니다.

s = 'Python is awesome!'
s = s.center(30, '-')
print(s)
# ------Python is awesome!------

27, ljust()

원래 문자열을 왼쪽 정렬하고 길이 너비만큼 공백을 넣은 새 문자열을 반환합니다.

s = 'Python is awesome!'
s = s.ljust(30, '-')
print(s)
# Python is awesome!------------

28, rjust()

원래 문자열을 오른쪽 정렬하고 길이 너비만큼 공백을 넣은 새 문자열을 반환합니다.

s = 'Python is awesome!'
s = s.rjust(30, '-')
print(s)
# ------------Python is awesome!

29, f-Strings

f-string은 문자열 형식을 지정하는 새로운 구문입니다.

与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快!

num = 1
language = 'Python'
s = f'{language} is the number {num} in programming!'
print(s)
# Python is the number 1 in programming!
num = 1
language = 'Python'
s = f'{language} is the number {num*8} in programming!'
print(s)
# Python is the number 8 in programming!

30、swapcase()

翻转字符串中的字母大小写。

s = 'HELLO world'
s = s.swapcase()
print(s)
# hello WORLD

31、zfill()

string.zfill(width)。

返回长度为width的字符串,原字符串string右对齐,前面填充0。

s = '42'.zfill(5)
print(s)
# 00042
s = '-42'.zfill(5)
print(s)
# -0042
s = '+42'.zfill(5)
print(s)
# +0042


위 내용은 필수 파이썬 문자열 메소드 31가지, 모아두길 추천!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제