[Do it! 점프 투 파이썬-스터디 노트] 02장 프로그래밍의 기초, 자료형(02-1 숫자형, 02-2 문자열 자료형)

2021. 4. 15. 17:38PYTHON/Do it! 점프 투 파이썬

 

02장 프로그래밍의 기초, 자료형

 

02-1 숫자형

숫자형은 어떻게 만들고 사용할까?

▷정수형(Integer)

▷실수형(Floating-point)

   실수형의 소수점 표현 방식: 4.24E10, 4.24e10, 4.24e-10

▷8진수(Octal): 0o, 0O(0o177)

▷16진수(Hexadecimal): 0x(0x8ff)

 

숫자형을 활용하기 위한 연산자

▷사진연산

▷x의 y제곱을 나타내는 **연산자(x**y)

▷나눗셈 후 나머지를 반환하는 % 연산자

▷나눗셈 후 몫을 반환하는 // 연산자

 

 

02-2 문자열 자료형(String)

문자열은 어떻게 만들고 사용할까?

1. 큰따옴표(")로 양쪽 둘러싸기

2. 작은따옴표(')로 양쪽 둘러싸기

3. 큰따옴표 3개를 연속(""")으로 써서 양쪽 둘러싸기

4. 작은따옴표 3개를 연속(''')으로 써서 양쪽 둘러싸기

 

작은따옴표나 큰따옴표를 문자열에 포함시키는 방법은 백슬래시(|)를 사용하는 것이다. 백슬래시를 작은따옴표나 큰따옴표 앞에 삽입하면 백슬래시 뒤의 따옴표는 문자열을 둘러싸는 기호의 의미가 아니라 문자 그 자체를 뜻하게 된다.

>>>food='Python|'s favorite food is pearl'

>>>say="|"Python is very easy.|" he says."

 

여러 줄인 문자열을 변수에 대입하고 싶을 때

1. 줄을 바꾸는 이스케이프 코드 '|n' 삽입하기

2. 연속된 작은따옴표 3개(''') 또는 큰따옴표 3개(""") 사용하기

>>>multiline='''(""")

...

... '''(""")

 

 

◈ 이스케이프 코드

이스케이프 코드란 프로그래밍할 때 사용할 수 있도록 미리 정의해둔 '문자 조합'이다. 주료 출력물을 보기 좋게 정렬하는 용도로 사용한다.

\n: 문자열 안에서 줄을 바꿀 때 사용

\t: 문자열 사이에 탭 간격을 줄 때 사용

\\: 문자 \를 그대로 표현할 때 사용

\': 작은따옴표(')를 그대로 표현할 때 사용

\": 큰따옴표(")를 그대로 표현할 때 사용

\r: 캐리지 리턴(줄 바꿈 문자, 현재 커서를 가장 앞으로 이동)

\f: 폼 피드(줄 바꿈 문자, 현재 커서를 다음 줄로 이동)

\a: 벨 소리(출력할 때 PC 스피커에서 '삑' 소리가 난다)

\b: 백스페이스

\000: 널 문자

 

문자열 연산하기

1. 문자열 더해서 연결하기(Concatenation)

2. 문자열 곱하기

3. 문자열 곱하기 응용

4. 문자열 길이 구하기

 

 

 

문자열 인덱싱(Indexing)과 슬라이싱(Slicing)

파이썬은 0부터 숫자를 센다(a[0], a[1], ...)

마이너스(-) 기호를 붙이면 문자를 뒤에서부터 읽는다

[이상:미만:간격]

슬라이싱 기법으로 a[시작번호:끝번호]를 지정할 때 끝 번호에 해당하는 것은 포함하지 않는다. (시작번호<=a<끝번호)

 

 

문자열 포매팅(Formatting)

◈문자열 포맷 코드

%s: 문자열(String)

%c: 문자 1개(Character)

%d: 정수(Integer)

%f: 부동 소수(Floating-point)

%o: 8진수

%x: 16진수

%%: Literal %(문자 '%' 자체)

 

 

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

1. 정렬과 공백

%10s는 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽으로 정렬하고 그 앞의 나머지는 공백으로 남겨두라는 의미이다. 반대쪽인 왼쪽 정렬은 %-10s이다.

2. 소수점 표현하기

>>>"%0.4f" %3.42134234     '.'는 소수점 포인트를 말하고 그 뒤의 숫자 4는 소수점 뒤에 나올 숫자의 개수를 말한다

'3.4213'

>>>"%10.4f" %3.42134234     전체 길이가 10개인 문자열 공간에서 오른쪽 정렬을 하고 소수점 네 번째 자리까지 표시

'      3.4213'

 

 

format 함수를 사용한 포매팅 .format( )

숫자, 문자열, 숫자 값을 가진 변수, 인덱스 항목, 이름(name=value) 등을 넣을 수 있다.

왼쪽 정렬 :<

오른쪽 정렬 :>

가운데 정렬:^

정렬할 때 공백 대신 지정한 문자 값으로 채워넣기 위해서는 넣을 문자 값은 정렬문자 <, >, ^ 바로 앞에 넣어야 한다{0:=^10}, {0:!<10} 등

format 함수를 사용해 문자열 포매팅을 할 경우 {}와 같은 중괄호 문자를 포매팅 문자가 아닌 문자 그대로 사용하고 싶은 경우에는 {{}}처럼 2개를 연속으로 사용하면 된다.

 

 

f문자열 포매팅 f'{   }'

문자열 앞에 f접두사를 붙이면 f 문자열 포매팅 기능을 사용할 수 있다

 

 

 

 

문자열 관련 함수(문자열 내장 함수) .함수이름(  )

1. 문자 개수 세기(count)

2. 위치 알려주기(find): 찾는 문자가 처음으로 나온 위치를 반환한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 -1을 반환한다.

3. 위치 알려주기(index): 문자열 중 찾는 문자가 처음으로 나온 위치를 반환한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 오류를 발생시킨다.

4. 문자열 삽입(join): ",".join('abcd') -> 'a,b,c,d'

5. 소문자를 대문자로 바꾸기(upper)

6. 대문자를 소문자로 바꾸기(lower)

7. 왼쪽 공백 지우기(lstrip)

8. 오른쪽 공백 지우기(rstrip)

9. 양쪽 공백 지우기(strip)

10. 문자열 바꾸기(replace): replace(바뀌게 될 문자열, 바꿀 문자열)

11. 문자열 나누기(split): 공백 혹은 괄호 안에 입력된 특정 값을 구분자로 해서 문자열을 나누어 리스트로 출력한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f'{  }'