Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 IP 주소의 선행 0 제거하기: 단계별 가이드

이 튜토리얼에서는 IP 주소에 포함된 선행 0(leading zeros)을 제거하는 파이썬 프로그램을 작성해 보겠습니다. 예를 들어 255.001.040.001과 같은 IP 주소가 있다면, 이를 255.1.40.1 형태로 변환하는 것이 목표입니다.

문제 해결 접근 방식

프로그램을 작성하기 전에 해결 과정을 단계별로 정리하면 다음과 같습니다.

  • IP 주소를 문자열로 초기화합니다.
  • split() 함수를 사용하여 점(.)을 기준으로 IP 주소를 나눕니다.
  • 각 부분을 정수(int)로 변환합니다. 정수로 변환하면 선행 0이 자동으로 제거됩니다.
  • 다시 각 부분을 문자열(str)로 변환한 후 점(.)으로 연결(join)합니다.
  • 최종 결과를 출력합니다.

예제 코드

## IP 주소 초기화
ip_address = "255.001.040.001"

## split() 함수를 사용하여 점(.) 기준으로 분리
parts = ip_address.split(".")

## 각 부분을 int로 변환하여 선행 0 제거
parts = [int(part) for part in parts]

## 다시 str로 변환
parts = [str(part) for part in parts]

## join() 메서드로 모든 부분을 연결
ip_address = ".".join(parts)

print(ip_address)

위 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다.

실행 결과

255.1.40.1

추가 팁: 더 간결한 한 줄 코드

리스트 컴프리헨션을 활용하면 위의 과정을 한 줄로 압축할 수도 있습니다.

ip_address = "255.001.040.001"
result = ".".join(str(int(part)) for part in ip_address.split("."))
print(result)  # 출력: 255.1.40.1

이 방법은 split(), int(), str(), join()을 하나의 표현식으로 연결하여 코드를 더욱 간결하게 만들어 줍니다.

프로그램에 대해 궁금한 점이 있다면 댓글로 남겨주세요!