Python에서 변수가 문자열인지 여부를 확인합니다

Manav Narula 2023년1월30일
  1. type()함수를 사용하여 변수가 문자열인지 아닌지 확인
  2. isinstance()함수를 사용하여 변수가 문자열인지 아닌지 확인
Python에서 변수가 문자열인지 여부를 확인합니다

문자열 데이터 유형은 문자 모음을 나타내는 데 사용됩니다. 이 튜토리얼에서는 변수가 문자열 유형인지 여부를 확인하는 방법에 대해 설명합니다.

type()함수를 사용하여 변수가 문자열인지 아닌지 확인

type()함수는 전달 된 변수의 클래스 유형을 반환합니다. 다음 코드는이 함수를 사용하여 변수가 문자열인지 여부를 확인하는 방법을 보여줍니다.

value = "Yes String"
if type(value) == str:
    print("True")
else:
    print("False")

출력:

True

그러나이 방법은 일반적으로 권장되지 않으며 Python에서는 unidiomatic이라고합니다. 그 이유는==연산자가 문자열 클래스에 대해서만 변수를 비교하고 모든 하위 클래스에 대해False를 반환하기 때문입니다.

isinstance()함수를 사용하여 변수가 문자열인지 아닌지 확인

따라서 전통적인type()대신isinstance()함수를 사용하는 것이 좋습니다. isinstance()함수는 객체가 지정된 하위 클래스에 속하는지 여부를 확인합니다. 다음 코드 스 니펫은이를 사용하여 문자열 객체를 확인하는 방법을 설명합니다.

value = "Yes String"
if isinstance(value, str):
    print("True")
else:
    print("False")

출력:

True

Python 2에서strunicode의 추상 클래스 인basestring클래스를 사용하여 객체가str또는unicode의 인스턴스인지 테스트 할 수 있습니다. 예를 들면

value = "Yes String"
if isinstance(value, basestring):
    print("True")
else:
    print("False")

출력:

True

Python 3에서 위의 방법을 사용하려면six모듈을 사용할 수 있습니다. 이 모듈에는 Python 2 및 3과 호환되는 코드를 작성할 수있는 함수가 있습니다.

string_types()함수는 문자열 데이터에 대해 가능한 모든 유형을 리턴합니다. 예를 들면

import six

value = "Yes String"
if isinstance(value, six.string_types):
    print("True")
else:
    print("False")

출력:

True
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Python String