프로그램 언어/Python

Python공부 -2

찬영_00 2025. 3. 6. 11:40

숫자형 나타내기

# 정수형
a = 123
b = -187
c = 0

# 실수형
d = 1.2
e = -3.45

# 8진수
f = 0o177

# 16진수
g = 0x8ff
h = 0xABC

print(a)
print(b)
print(c)
print(d)
print(e)
print(f)
print(g)
print(h)

 

간단하다.

다음은 사칙연산을 해보겠다.

 

 

이렇게 사칙연산도 우리가 아는 것과 다름이 없다.

python에서 제곱은 다음과 같이 나타낸다.

C언어에는 없는 멋진 경우이다.

10의 10승이기 때문에 저 값이 나온다.

 

그리고 나머지를 구하는 것은 다음과 같다.

간단하다. 그리고 나눗셈에도 몫만 가져오는 방법이 있다.

바로 //을 사용하는건데 예시를 보자

위와 같이 나누기에서는 10을 3으로 나누어 버리기 때문에 소숫점이 발생한다.

하지만 // 을 사용하면 몫인 3만 가져올 수 있다.

 

복합연산자는 = 과 사직연산을 합쳐둔건데, 

에를 들면 +=, -=, *=, /=, //=, %=, **= 이런 것들이다.

이것을 풀어서 보여주면

위와 같다.

 

대충 이해가 갔으리라 믿는다.

복합 연산자를 쓰는 이유는 가독성이 좋기 때문이니 애용하자

 

문자열

문자열은 문자들이 모여 열을 이룬다. 

선언해주는 방법은 총 4가지이다.

' ' or " " or """ """ or ''' '''이런 식으로 선언을 해준다.

예시를 보이겠다.

 

 

출력이 짤렸는데 abc는 총 4개 나왔으니 실습해봐도 된다.

그럼 이제 걸리는 부분이 만약 문자열 안에 큰 따옴표나 작은 따옴표를 넣고 싶은 경우 어떻게 할까?

 

방법은 여러개니 아래를 참고하여 사용하고 싶은 것을 사용하자

1. 안에 작은 따옴표를 작성시 큰 따옴표로 묶기

2. 안에 큰 따옴표를 작성시 작은 다옴표로 묶기

3. 따옴표 앞에 역슬레시( \ )_사용하기

 

전부 예시로 보이겠다.

a = "a'b'c'd"
b = 'a"b"c"d'
c = 'a\'b\'c\'d'
d = "a\"b\"c\'d"

print(a)
print(b)
print(c)
print(d)

문자가 여러줄인 경우 사용법은 또 다르다.

아래를 참고하자

 

a = "abc\ndef"
b = """abc
def"""
c = '''abc
def'''

print(a)
print(b)
print(c)

매우 간편하다.

여기서 \n이 무엇인지 궁금할 수 있다.

이스케이프라는 것인데 

https://wikidocs.net/13

 

02-2 문자열 자료형

문자열(string)이란 연속된 문자들의 나열을 말한다. 예를 들면 다음과 같다. ```plaintext "Life is too short, You need Python" "a…

wikidocs.net

여기를 참고하여 알이보면 된다.

 

문자열 연산하기

문자열도연산이 가능하다.

다음을 보면서 익혀보자

 

a = "hello "
b = "python"

print(a+b)

 

이렇게 곱하기도 된다.

a = "hello "

print(a*2)

 

재밌지 않은가?

 

우리는 문자열의 길이도 손쉽게 알 수있다. (공백도 포함된 것을 잊지말자)

a = "abcdefg"

print(len(a))

 

문자열 인덱싱과 슬라이싱

인덱싱은 가리킨다, 슬라이싱은 잘라 낸다라는 의미이다.

 

예시를 보며 이해해보자

a = "hello park"

"""
hello park
0123456789

위처럼 a에 저장한 문자열은해당 위치에 존재한다.
즉 h = 0번째 자리
r은 8번째 자리에있다는 의미이다.

아래 코드로 확인해보자

"""

print(a[0])
print(a[8])

 

그럼 다음을 실행해보면 어떻게 될까?

print(a[-1])
print(a[-0])

-는 뒤에서 부터 시작하라는 의미이다.

0은 -나 + 나 0이기때문에 같은 위치를 가리킨다.

 

다음은 슬라이싱에 대해 알아보자

a = "hello park"

print(a[0:5])
print(a[0:4])

 

이런경우 다음과 같이 출력된다.

 

이상하지 않은가? 왜 0~ 4면 hello지 왜 hell이 출력되나?

이유는 특별한건 없다.

python은 0~5까지라고 했을때 5를 포함하지 않는데

이유는 그뿐이다.

따라서 0~4까지면 4를 포함하지 않은 0~3만 출력하는 것이다.

 

물론 여기에 인덱싱과 같이 -도 존재한다.

* a[:]를 입력할 경우 전체를 뜻한다.

 

응용해보자

"pork -> park으로 변경하고 싶을 땐 아래와 같이 진행할 수 있다."

a = "pork"
a = a[:1] + 'a' + a[2:]
print(a)

 

잘 기억해두면 많이 응용될 것 같다.

 

문자열 포맷팅

a = 3
b = "I have %d gun" % a

c = 5
d = "I have %d gun and %d candy" % (a, c)

print(b)
print(d)

 

 

이런식으로 대입하여 사용도 가능하다.

 

포맷 코드와 숫자 함께 사용하기

여기도 활용할 것들이 많지만 알아서 참고하도록 하고, 그중 몇가지만 실습해보겠다,.

 

우리는 문자의 전체 길이를 정하고 싶을 때가 존재한다.

이럴때 유용한 것이다.

https://sylagape1231.tistory.com/42

 

[Python] 파이썬 출력 함수 print 사용법 정리

기본 출력 방법 print 함수 통해 한 문장 출력하기 python3에서 문장을 출력하기 위해 print()함수를 사용한다. 이때 괄호 내에 큰 따옴표나 작은 따옴표 둘 중 아무거나 사용해도 된다. python에선 작은

sylagape1231.tistory.com

일단 print하는데 있어 방법이 여러개가 있는데 다 설명은 못하니 위 블로그를 참고하자

 

a = 1.456
b = 3.42

print(f"{a:10.3f}")
print(f"{b:10.3f}")

 

이런식으로 앞은 공백으로 두고 3은 소숫점 3번째 자리까지 나태내라는 의미이다.

10은 전체길이이니 위에서는 앞에 공백은 5개 이다.

 

어느정도 기본적인 이해가 되었으니 이제 문자열 관련 함수들을 알아보자

a = "HTTP"
print(a.count('a'))

a = " hi my name is Park "
print(a.find('a'))

print(a.index('a'))

print(",".join(a))

print(a.upper())

print(a.lower())

print(a.lstrip())

print(a.rstrip())

print(a.strip())

print(a.replace("Park", "Lee"))

print(a.split())

 

 

어려운건 없다.링크에서 함수에 대해 확인해 보는 것을 추천한다.

 

이렇게 숫자형, 문자열 자료형에 대해 알아보았다.

다음으로 리스트,튜플 등을 알아보겠다.

'프로그램 언어 > Python' 카테고리의 다른 글

Python -4  (0) 2025.03.11
Python공부 -3  (0) 2025.03.07
Python 공부 -1  (1) 2025.03.05