산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

파이썬 - 문자열

이전 페이지다음 페이지

문자열은 파이썬에서 가장 인기 있는 유형 중 하나입니다. 문자를 따옴표로 묶어 간단하게 만들 수 있습니다. 파이썬은 작은 따옴표를 큰 따옴표와 동일하게 취급합니다. 문자열을 만드는 것은 변수에 값을 할당하는 것만큼 간단합니다. 예를 들어 -

var1 = 'Hello World!'
var2 = "Python Programming"

문자열 값 액세스

Python은 문자 유형을 지원하지 않습니다. 이들은 길이가 1인 문자열로 취급되므로 하위 문자열로도 간주됩니다.

하위 문자열에 액세스하려면 인덱스와 함께 슬라이싱에 대괄호를 사용하여 하위 문자열을 얻으십시오. 예를 들어 -

라이브 데모
#!/usr/bin/python

var1 = 'Hello World!'
var2 = "Python Programming"

print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]

위의 코드가 실행되면 다음 결과가 생성됩니다 -

var1[0]:  H
var2[1:5]:  ytho

문자열 업데이트

변수를 다른 문자열에 (재)할당하여 기존 문자열을 "업데이트"할 수 있습니다. 새 값은 이전 값 또는 완전히 다른 문자열과 관련될 수 있습니다. 예를 들어 -

라이브 데모
#!/usr/bin/python

var1 = 'Hello World!'
print "Updated String :- ", var1[:6] + 'Python'

위의 코드가 실행되면 다음 결과가 생성됩니다 -

Updated String :-  Hello Python

이스케이프 문자

다음 표는 백슬래시 표기법으로 표현할 수 있는 이스케이프 또는 인쇄 불가능한 문자의 목록입니다.

이스케이프 문자가 해석됩니다. 작은따옴표 및 큰따옴표 문자열로.

백슬래시 표기법 16진수 문자 설명
\a 0x07 벨 또는 알림
\b 0x08 백스페이스
\cx 컨트롤-x
\C-x 컨트롤-x
\e 0x1b 탈출
\f 0x0c 폼피드
\M-\C-x 메타-컨트롤-x
\n 0x0a 줄 바꿈
\nnn 8진수 표기법, 여기서 n은 0.7 범위에 있음
\r 0x0d 캐리지 리턴
\s 0x20 스페이스
\t 0x09
\v 0x0b 세로 탭
\x 문자 x
\xnn 16진수 표기법, 여기서 n은 0.9, a.f 또는 A.F 범위에 있음

문자열 특수 연산자

문자열 변수 a를 가정합니다. 'Hello' 및 변수 b 보유 'Python'을 누른 다음 -

연산자 설명
+ 연결 - 연산자의 양쪽에 값을 추가합니다. a + b는 HelloPython을 제공합니다.
* 반복 - 동일한 문자열의 여러 복사본을 연결하여 새 문자열을 생성합니다. a*2는 -HelloHello를 제공합니다.
[] 슬라이스 - 주어진 인덱스의 문자를 제공합니다. a[1]는 e를 줄 것입니다
[ :] 범위 슬라이스 - 지정된 범위의 문자를 제공합니다. a[1:4]는 ell을 줄 것입니다
에서 멤버십 - 주어진 문자열에 문자가 있으면 true를 반환합니다. 유언장의 H는 1을 줍니다.
없음 멤버십 - 주어진 문자열에 문자가 없으면 true를 반환합니다. M이 유언장에 없으면 1을 줍니다.
r/R 원시 문자열 - 이스케이프 문자의 실제 의미를 억제합니다. 원시 문자열의 구문은 따옴표 앞에 오는 원시 문자열 연산자인 "r"을 제외하고 일반 문자열과 정확히 동일합니다. "r"은 소문자(r) 또는 대문자(R)일 수 있으며 첫 번째 따옴표 바로 앞에 위치해야 합니다. 인쇄 r'\n'은 \n을 인쇄하고 R'\n'인쇄는 \n을 인쇄합니다.
% 형식 - 문자열 형식 지정 수행 다음 섹션에서 참조

문자열 형식화 연산자

Python의 가장 멋진 기능 중 하나는 문자열 형식 연산자 %입니다. 이 연산자는 문자열에 고유하며 C의 printf() 제품군의 함수를 포함합니다. 다음은 간단한 예입니다 -

라이브 데모
#!/usr/bin/python

print "My name is %s and weight is %d kg!" % ('Zara', 21)

위의 코드가 실행되면 다음 결과가 생성됩니다 -

My name is Zara and weight is 21 kg!

다음은 % −

와 함께 사용할 수 있는 전체 기호 집합의 목록입니다.
서식 기호 전환
%c 문자
%s 포맷 전 str()을 통한 문자열 변환
%i 부호 있는 십진 정수
%d 부호 있는 십진 정수
%u 부호 없는 십진 정수
%o 8진수 정수
%x 16진수 정수(소문자)
%X 16진수 정수(대문자)
%e 지수 표기법(소문자 'e' 사용)
%E 지수 표기법(대문자 'E' 사용)
%f 부동 소수점 실수
%g %f와 %e 중 짧은 것
%G %f와 %E 중 더 짧은 것

기타 지원되는 기호 및 기능은 다음 표에 나열되어 있습니다. -

기호 기능
* 인수는 너비 또는 정밀도를 지정합니다.
- 왼쪽 맞춤
+ 표시 표시
양수 앞에 공백을 둡니다
# 'x' 또는 'X'가 사용되었는지 여부에 따라 8진수 선행 0( '0' ) 또는 16진수 선행 '0x' 또는 '0X'를 추가합니다.
0 왼쪽에서 0으로 채우기(공백 대신)
% '%%'는 단일 리터럴 '%'를 남깁니다.
(var) 매핑 변수(사전 인수)
m.n. m은 최소 총 너비이고 n은 소수점 뒤에 표시할 자릿수입니다(해당되는 경우)

삼중 따옴표

Python의 삼중따옴표는 NEWLINE, TAB 및 기타 특수 문자를 포함하여 문자열이 여러 줄에 걸쳐 있도록 허용함으로써 구출됩니다.

삼중따옴표 구문은 세 개의 연속적인 작은따옴표 또는 큰따옴표로 구성됩니다. 따옴표.

라이브 데모
#!/usr/bin/python

para_str = """this is a long string that is made up of
several lines and non-printable characters such as
TAB ( \t ) and they will show up that way when displayed.
NEWLINEs within the string, whether explicitly given like
this within the brackets [ \n ], or just a NEWLINE within
the variable assignment will also show up.
"""
print para_str

위의 코드를 실행하면 다음과 같은 결과가 나온다. 모든 단일 특수 문자가 "up" 사이의 문자열 끝에 있는 마지막 NEWLINE 바로 아래까지 인쇄된 형식으로 변환된 방법에 유의하십시오. 그리고 닫는 삼중 따옴표. 또한 NEWLINE은 줄 끝에 명시적인 캐리지 리턴이나 이스케이프 코드(\n) −

와 함께 발생합니다.
this is a long string that is made up of
several lines and non-printable characters such as
TAB (    ) and they will show up that way when displayed.
NEWLINEs within the string, whether explicitly given like
this within the brackets [
 ], or just a NEWLINE within
the variable assignment will also show up.

원시 문자열은 백슬래시를 특수 문자로 전혀 취급하지 않습니다. 원시 문자열에 넣은 모든 문자는 작성한 그대로 유지됩니다 -

라이브 데모
#!/usr/bin/python

print 'C:\\nowhere'

위의 코드가 실행되면 다음 결과가 생성됩니다 -

C:\nowhere

이제 raw string을 사용해보자. r'expression'에 표현식을 넣습니다. 다음과 같이 -

라이브 데모
#!/usr/bin/python

print r'C:\\nowhere'

위의 코드가 실행되면 다음 결과가 생성됩니다 -

C:\\nowhere

유니코드 문자열

Python의 일반 문자열은 내부적으로 8비트 ASCII로 저장되는 반면 유니코드 문자열은 16비트 유니코드로 저장됩니다. 이를 통해 전 세계 대부분의 언어에서 사용된 특수 문자를 포함하여 보다 다양한 문자 집합을 사용할 수 있습니다. 유니코드 문자열 처리를 다음으로 제한하겠습니다. -

라이브 데모
#!/usr/bin/python

print u'Hello, world!'

위의 코드가 실행되면 다음 결과가 생성됩니다 -

Hello, world!

보시다시피, 원시 문자열이 접두사 r을 사용하는 것처럼 유니코드 문자열은 접두사 u를 사용합니다.

내장된 문자열 메소드

파이썬은 문자열을 조작하기 위해 다음과 같은 내장 메소드를 포함합니다 -

시니어 번호 설명이 있는 메서드
1 대화()

문자열의 첫 글자를 대문자로

2 중심(너비, 채우기 문자)

전체 너비 열의 중앙에 원래 문자열이 있는 공백으로 채워진 문자열을 반환합니다.

3 count(str, beg=0,end=len(문자열))

시작 인덱스 beg와 끝 인덱스 끝이 지정된 경우 문자열 또는 문자열의 하위 문자열에서 str이 몇 번 발생하는지 계산합니다.

4 디코드(인코딩='UTF-8',오류='엄격')

인코딩을 위해 등록된 코덱을 사용하여 문자열을 디코딩합니다. 인코딩 기본값은 기본 문자열 인코딩입니다.

5 인코딩(인코딩='UTF-8',오류='엄격')

문자열의 인코딩된 문자열 버전을 반환합니다. 오류 시 기본값은 '무시' 또는 '바꾸기'로 오류가 제공되지 않는 한 ValueError를 발생시키는 것입니다.

6 endswith(접미사, beg=0, end=len(문자열))

문자열 또는 문자열의 하위 문자열(시작 인덱스 beg 및 끝 인덱스 끝이 제공된 경우)이 접미사로 끝나는지 결정합니다. 그렇다면 true를 반환하고 그렇지 않으면 false를 반환합니다.

7 확장 탭(탭 크기=8)

문자열의 탭을 여러 공백으로 확장합니다. tabsize가 제공되지 않은 경우 탭당 기본적으로 8칸으로 설정됩니다.

8 찾기(str, beg=0 end=len(문자열))

시작 인덱스 beg와 끝 인덱스 끝이 주어지면 str이 문자열에서 발생하는지 아니면 문자열의 하위 문자열에서 발생하는지 확인합니다. 발견되면 인덱스를 반환하고 그렇지 않으면 -1을 반환합니다.

9 index(str, beg=0, end=len(문자열))

find()와 같지만 str이 없으면 예외를 발생시킵니다.

10 isalnum()

문자열이 1자 이상이고 모든 문자가 영숫자이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

11 이알파()

문자열이 1자 이상이고 모든 문자가 알파벳이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

12 isdigit()

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

13 저속()

문자열에 대소문자가 1개 이상 있고 모든 대소문자가 소문자이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

14 숫자()

유니코드 문자열에 숫자만 포함되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

15 isspace()

문자열에 공백 문자만 포함되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

16 제목()

문자열이 적절하게 "titlecase"이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

17 isupper()

문자열에 하나 이상의 대소문자가 있고 모든 대소문자가 대문자이면 true를 반환하고 그렇지 않으면 false를 반환합니다.

18 조인(순서)

시퀀스 seq에 있는 요소의 문자열 표현을 구분 기호 문자열과 함께 문자열로 병합(연결)합니다.

19 len(문자열)

문자열의 길이를 반환

20 ljust(폭[, 채우기 문자])

전체 너비 열에 대해 왼쪽 정렬된 원래 문자열과 함께 공백으로 채워진 문자열을 반환합니다.

21 낮은()

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

22 이스트립()

문자열의 모든 선행 공백을 제거합니다.

23 maketrans()

번역 함수에서 사용할 번역 테이블을 반환합니다.

24 최대(str)

문자열 str에서 최대 알파벳 문자를 반환합니다.

25 분(str)

문자열 str에서 최소 알파벳 문자를 반환합니다.

26 교체(이전, 새 [, 최대])

문자열의 모든 항목을 새 항목으로 바꾸거나 최대 항목이 지정된 경우 최대 항목으로 바꿉니다.

27 rfind(str, beg=0,end=len(문자열))

find()와 같지만 문자열에서 역방향으로 검색합니다.

28 rindex( str, beg=0, end=len(문자열))

index()와 같지만 문자열에서 역방향으로 검색합니다.

29 rjust(폭,[, 채우기 문자])

전체 너비 열에 대해 오른쪽 정렬된 원래 문자열과 함께 공백으로 채워진 문자열을 반환합니다.

30 스트립()

문자열의 모든 후행 공백을 제거합니다.

31 split(str="", num=string.count(str))

구분 기호 str(제공되지 않은 경우 공백)에 따라 문자열을 분할하고 하위 문자열 목록을 반환합니다. 주어진 경우 최대 num개의 하위 문자열로 분할합니다.

32 분할선( num=string.count('\n'))

문자열을 모두(또는 num) NEWLINE으로 분할하고 NEWLINE이 제거된 각 줄의 목록을 반환합니다.

33 startswith(str, beg=0,end=len(string))

문자열 또는 문자열의 하위 문자열(시작 인덱스 beg 및 끝 인덱스 끝이 제공된 경우)이 하위 문자열 str로 시작하는지 확인합니다. 그렇다면 true를 반환하고 그렇지 않으면 false를 반환합니다.

34 스트립([문자])

문자열에 대해 lstrip() 및 rstrip()을 모두 수행합니다.

35 스왑케이스()

문자열의 모든 문자에 대해 대소문자를 반전합니다.

36 제목()

문자열의 "titlecased" 버전을 반환합니다. 즉, 모든 단어는 대문자로 시작하고 나머지는 소문자입니다.

37 번역(테이블, 삭제 문자="")

번역 테이블 str(256자)에 따라 문자열을 번역하고 del 문자열에서 제거합니다.

38 위()

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

39 zfill(너비)

전체 너비 문자에 대해 0으로 왼쪽 패딩된 원래 문자열을 반환합니다. 숫자용으로 의도된 zfill()은 주어진 모든 기호(0보다 작은 값)를 유지합니다.

40 10진수()

유니코드 문자열에 10진수 문자만 포함되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.


python

  1. C# 문자열
  2. 파이썬 연산자
  3. 파이썬 사전
  4. Python 문자열:바꾸기, 결합, 분할, 반전, 대문자 및 소문자
  5. EXAMPLE이 있는 Python String strip() 함수
  6. 예제가 있는 Python 문자열 count()
  7. Python String format() 예제로 설명
  8. 파이썬 문자열 길이 | len() 메서드 예제
  9. 예제가 있는 Python 문자열 find() 메서드
  10. Python의 Enumerate() 함수:루프, 튜플, 문자열(예제)