Python 에서 문자열이 유효한 식별자인지 확인하는 방법

PythonBeginner
지금 연습하기

소개

이 랩에서는 Python 에서 문자열이 유효한 식별자인지 확인하는 방법을 배우게 됩니다. 깨끗하고 오류 없는 코드를 작성하려면 식별자 명명 규칙을 이해하는 것이 중요합니다.

이 랩에서는 Python 식별자에 대한 규칙을 다룹니다. 여기에는 문자 또는 밑줄로 시작, 문자, 숫자 및 밑줄 포함, 대소문자 구분, 예약된 키워드가 아닌 것 등이 포함됩니다. Python 스크립트에서 유효한 식별자를 사용하여 변수를 생성하고 str.isidentifier()keyword 모듈을 사용하여 식별자를 검증하는 연습을 할 것입니다.

Python 식별자 학습

이 단계에서는 Python 식별자에 대해 배우게 됩니다. 식별자는 Python 에서 변수, 함수, 클래스, 모듈 또는 기타 객체를 식별하는 데 사용되는 이름입니다. 식별자 명명 규칙을 이해하는 것은 깨끗하고 오류 없는 코드를 작성하는 데 매우 중요합니다.

Python 식별자 규칙:

  1. 문자 또는 밑줄로 시작: 식별자는 문자 (A-Z 또는 a-z) 또는 밑줄 (_) 로 시작해야 합니다.
  2. 문자, 숫자 및 밑줄 포함 가능: 첫 번째 문자 뒤에 식별자는 문자, 숫자 (0-9) 및 밑줄을 포함할 수 있습니다.
  3. 대소문자 구분: Python 식별자는 대소문자를 구분합니다. 즉, myVariablemyvariable은 서로 다른 식별자로 처리됩니다.
  4. 예약된 키워드 없음: 식별자는 Python 의 예약된 키워드 (예: if, else, for, while, def, class, import, return, True, False, None) 가 될 수 없습니다.

유효하고 유효하지 않은 식별자의 몇 가지 예를 살펴보겠습니다.

유효한 식별자:

  • my_variable
  • _my_variable
  • myVariable
  • MY_VARIABLE
  • variable123

유효하지 않은 식별자:

  • 123variable (숫자로 시작)
  • my-variable (하이픈 포함)
  • my Variable (공백 포함)
  • if (예약된 키워드)

이제 Python 스크립트에서 유효한 식별자를 사용하여 변수를 생성하는 연습을 해보겠습니다.

  1. LabEx 환경에서 VS Code 편집기를 엽니다.

  2. ~/project 디렉토리에 identifiers.py라는 새 파일을 만듭니다.

    cd ~/project
  3. identifiers.py에 다음 코드를 추가합니다.

    ## Valid identifiers
    my_variable = 10
    _my_variable = 20
    myVariable = 30
    MY_VARIABLE = 40
    variable123 = 50
    
    ## Printing the values
    print(my_variable)
    print(_my_variable)
    print(myVariable)
    print(MY_VARIABLE)
    print(variable123)
  4. 파일을 저장합니다.

  5. python 명령을 사용하여 스크립트를 실행합니다.

    python identifiers.py

    다음 출력이 표시되어야 합니다.

    10
    20
    30
    40
    50

이 연습에서는 유효한 식별자를 사용하여 변수를 생성하고 해당 값을 인쇄하는 방법을 보여줍니다. 이러한 규칙을 이해하면 구문 오류를 방지하고 더 읽기 쉬운 코드를 작성하는 데 도움이 됩니다.

str.isidentifier() 사용

이 단계에서는 Python 에서 문자열이 유효한 식별자인지 확인하기 위해 str.isidentifier() 메서드를 사용하는 방법을 배우게 됩니다. 이 메서드는 프로그래밍 방식으로 식별자 이름을 검증하는 편리한 방법입니다.

str.isidentifier() 메서드는 문자열이 Python 언어 정의에 따라 유효한 식별자인 경우 True를 반환하고, 그렇지 않으면 False를 반환합니다.

다양한 문자열을 테스트하고 유효한 식별자인지 확인하는 Python 스크립트를 만들어 보겠습니다.

  1. LabEx 환경에서 VS Code 편집기를 엽니다.

  2. ~/project 디렉토리에 check_identifier.py라는 새 파일을 만듭니다.

    cd ~/project
  3. check_identifier.py에 다음 코드를 추가합니다.

    ## Examples of strings to test
    valid_identifier = "my_variable"
    invalid_identifier_start_with_number = "123variable"
    invalid_identifier_with_space = "my variable"
    invalid_identifier_with_hyphen = "my-variable"
    keyword_identifier = "if"
    valid_identifier_with_underscore = "_my_variable"
    
    ## Using str.isidentifier() to check if the strings are valid identifiers
    print(f"'{valid_identifier}' is a valid identifier: {valid_identifier.isidentifier()}")
    print(f"'{invalid_identifier_start_with_number}' is a valid identifier: {invalid_identifier_start_with_number.isidentifier()}")
    print(f"'{invalid_identifier_with_space}' is a valid identifier: {invalid_identifier_with_space.isidentifier()}")
    print(f"'{invalid_identifier_with_hyphen}' is a valid identifier: {invalid_identifier_with_hyphen.isidentifier()}")
    print(f"'{keyword_identifier}' is a valid identifier: {keyword_identifier.isidentifier()}")
    print(f"'{valid_identifier_with_underscore}' is a valid identifier: {valid_identifier_with_underscore.isidentifier()}")

    이 스크립트는 여러 문자열을 정의하고 isidentifier() 메서드를 사용하여 각 문자열이 유효한 Python 식별자인지 확인합니다. 그런 다음 결과를 콘솔에 출력합니다.

  4. 파일을 저장합니다.

  5. python 명령을 사용하여 스크립트를 실행합니다.

    python check_identifier.py

    다음 출력이 표시되어야 합니다.

    'my_variable' is a valid identifier: True
    '123variable' is a valid identifier: False
    'my variable' is a valid identifier: False
    'my-variable' is a valid identifier: False
    'if' is a valid identifier: False
    '_my_variable' is a valid identifier: True

이 출력은 각 문자열에 대한 isidentifier() 메서드의 결과를 보여줍니다. 보시다시피 이 메서드는 Python 의 명명 규칙을 기반으로 유효하고 유효하지 않은 식별자를 올바르게 식별합니다.

keyword 모듈로 확인

이 단계에서는 Python 에서 문자열이 Python 키워드인지 확인하기 위해 keyword 모듈을 사용하는 방법을 배우게 됩니다. 키워드는 Python 에서 특별한 의미를 가지며 식별자로 사용할 수 없는 예약어입니다.

keyword 모듈은 주어진 문자열이 Python 키워드인지 확인하는 iskeyword()라는 함수를 제공합니다.

다양한 문자열을 테스트하고 키워드인지 확인하는 Python 스크립트를 만들어 보겠습니다.

  1. LabEx 환경에서 VS Code 편집기를 엽니다.

  2. ~/project 디렉토리에 check_keyword.py라는 새 파일을 만듭니다.

    cd ~/project
  3. check_keyword.py에 다음 코드를 추가합니다.

    import keyword
    
    ## Examples of strings to test
    keyword_string = "if"
    not_keyword_string = "my_variable"
    
    ## Using keyword.iskeyword() to check if the strings are keywords
    print(f"'{keyword_string}' is a keyword: {keyword.iskeyword(keyword_string)}")
    print(f"'{not_keyword_string}' is a keyword: {keyword.iskeyword(not_keyword_string)}")
    
    ## Display all keywords
    print("Python keywords:")
    print(keyword.kwlist)

    이 스크립트는 keyword 모듈을 가져오고 iskeyword() 함수를 사용하여 문자열 "if""my_variable"이 Python 키워드인지 확인합니다. 또한 스크립트는 keyword.kwlist를 사용하여 모든 Python 키워드 목록을 출력합니다.

  4. 파일을 저장합니다.

  5. python 명령을 사용하여 스크립트를 실행합니다.

    python check_keyword.py

    다음 출력이 표시되어야 합니다.

    'if' is a keyword: True
    'my_variable' is a keyword: False
    Python keywords:
    ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

이 출력은 keyword.iskeyword() 함수가 "if"를 키워드로, "my_variable"을 키워드가 아닌 것으로 올바르게 식별함을 보여줍니다. 또한 스크립트는 모든 Python 키워드 목록을 출력합니다.

요약

이 랩에서는 Python 식별자와 해당 명명을 관리하는 규칙에 대해 배웠습니다. 이러한 규칙에 따르면 식별자는 문자 또는 밑줄로 시작해야 하며, 문자, 숫자 및 밑줄을 포함할 수 있고, 대소문자를 구분하며, 예약된 키워드가 될 수 없습니다.

Python 스크립트에서 유효한 식별자를 사용하여 변수를 생성하는 연습을 통해 이러한 규칙의 올바른 사용법을 시연했습니다. 이 랩에서는 identifiers.py 파일을 생성하고, 유효한 식별자에 값을 할당하고, 해당 값을 콘솔에 출력하는 작업을 수행했습니다.