( 춤 안춥니다. )
- 이 글은 WeCode 에서 배운 내용을 정리하여 공유하는 글입니다.
( 코딩나라에서 살아남기 정도로 보시면 됩니다. )
WeCode 2주차의 셋째날인 오늘,
제가 소개할 내용은 !
이번 글에선,
지난글에서 Python 의 자료형을 이해한 여러분에게
' 그것을 쓰는 수 만가지 방법; '
에 대해 소개합니다.
오늘 내용은 정리할 부분과 그냥 보고 넘어갈 부분이 나뉘어있슴다...
( 즐겨찾기 ㄱㄱ! )
서론이 길었네요.
( 까먹으면 찾아보세요... )
( 어차피 자주쓰는거만 잘 외워짐 )
설명보다는 실전입니다!
실행 우선순위 !
() ** ( * / % ) ( + - )
arithmetic : 산술연산자덧셈 + , 뺄셈 - , 곱셈 * , 나눗셈 /
제곱 ** , 몫 // , 나머지 %
assignment : 할당연산자= , += , -= , *= , /=
예 ) a += b -> a = a + b
comparison : 비교연산자== , < , > , <= , >=
logical : 논리연산자 ( 결과값으로 boolean 출력 )and , or , not
membership : 포함연산자
( look up : 포함여부를 확인하다 )in , not in
sequence 정보용 연산자 ( string / list / tuple )concatenation : + / 연쇄 연산자 Repetition : * / 반복 연산자
는 것은 다들 아시죠?
( 1 + 1 모르시는거 아니자나요; )
정보들의 주소값 ( 색인 ) [ sequence 자료형에서 사용 ]
범위 : 0 ~ n / -n ~ -1 변수[ i ] : i 주소값의 정보 변수[ i : j ] : i ~ ( j - 1 ) 사이의 정보 ( 비어있으면, 각 끝점 )
[ 원하는 정보값 얻기 ]
필요한 구간의 정보에 대한 index 값을 지정하여 따로 추출
[ sequence 자료형에서 사용 ]기본적으로 인덱싱에서의 index 지정방식과 같음 시작점, 종료점, 건너뛰기값을 설정하여 사용 list [ 첫값 : 끝값 : n ] = ( n - 1 ) 칸씩 건너뛰고 값 지정
[ 원하는 여러 정보값 얻기 ]
기호를 문법에서 벗어나게 하는 방법
기호 앞에 ' \ ' 를 붙여 사용한다.
자주 쓰이는 escape code 5종 세트!\n : 문자열 안에서 줄을 바꿀 때 사용 \t : 문자열 사이에 탭 간격을 줄 때 사용 \\ : 문자 \를 그대로 표현할 때 사용 \' : 작은따옴표(')를 그대로 표현할 때 사용 \" : 큰따옴표(")를 그대로 표현할 때 사용
[ 문법에 얽힌 기호들 사용하기 ]
줄바꿈있는 문자를 그대로 표시하는 방법
" 이나 ' 를 3개 사용
[ 여러줄인 문자열 그대로 표현하기 ]
여러 위치에 이름, 값을 지정하여 긴 string 에 정보를 주입하는 방식
% 방식 : 위치지정을 %로 하고, 값지정을 %( 값 )
( 밑의 {} 포맷팅에 비해 느려서, 자주 사용하진 않음 )
함수 방식 : {} 로 위치 지정,
문자열 끝에 .format ( 값 ) 으로 값 지정
f 문자열 방식 : 문자열 앞에 f 를 붙여서 사용, 변수값 참조 가능
( literal string interpolation 이라고도 함 )
사용하기 위한 기본 조건들
1. 표현식 앞에 : 를 붙여야 함
2. { } 에 내용을 적지 않아도 사용가능
3. 표현식 앞에 기호를 써주면, 여백 ( 기본값 ) 대신 지정한 기호로 채워줌
정렬 : () 안의 표현식을 사용.
n 의 값에 들어온 숫자값대로 자릿수를 맞춤.
왼 쪽 ( <n ) : 치환되는 값을 왼쪽으로
오른쪽 ( >n ) : 치환되는 값을 오른쪽으로
가운데 ( ^n ) : 치환되는 값을 가운데로
예 ) "{0:>5}".format("hi") => ' hi'
"{0:!>5}".format("hi") => '!!!hi'
소수점 표현 : ( .n ) 의 표현식을 사용.
n 의 값에 들어온 숫자값 대로 소수점 자릿수를 표현.
. 앞에 숫자를 넣으면, 숫자값대로 자릿수를 맞춤
예 ) y = 3.42134234
"{0:8.4f}".format(y) => ' 3.4213'
"{0:!8.4f}".format(y) => '!!3.4213'
[ 여러 상황에 맞춰 사용가능한 대입하기 ]
( 비교목록이라고 소개했던만큼, 대단한 자료형입니다! )
set ( 자료형 )
-> container, dictionary 자료형을 set 자료형으로 변환하는 명령
1. 비교하고자 하는 자료형들을 변환해주는데 씀
2. dictionary 를 변환하면, key 값만 인식
- 기호( &, | , - ) 를 쓰면, 양쪽 다 set 상태여야함
- 구문으로 쓰면 우항에 오는 비교대상이 set 이 아니여도 작동함
intersection : & / 교집합
union : | / 합집합
difference : - / 차집합
참고로 sequence 는 ' 순서있게 나열된 ' 이란 뜻입니다!
( 문자형이나 순서있는 container 가 해당되요! )
len ( sqc ) : element 개수
sqc . count ( 값 ) : 값의 개수
sqc . find ( 값 ) : 값이 처음으로 나온 index 값
" 값 " . join ( sqc ) : sqc 사이에 값을 삽입
str . upper : 대문자로 변환
str . lower : 소문자로 변환
str . strip : 여백을 모두 지움 ( strip 앞에 l 이나 r 을 붙여, 왼쪽이나 오른쪽으로 지정 )
str . replace ( i , j ) : i 에 바뀔부분, j 에 바꿀내용을 지정
str . split ( ) : ( ) 안의 값을 기준으로 str 의 내용을 쪼개어, 요소별로 list 에 넣음
lis [ index 값 ] = 값 : index 값 위치의 값 변경
del lis [ index 값 ] : index 값 위치의 값 삭제
lis . append ( 값 ) : list 마지막에 값을 추가
lis . sort ( ) : 요소들을 순서대로 정렬해줌
lis . reverse ( ) : 요소의 순서를 뒤집음
lis . index ( 값 ) : 값의 index 값 반환
lis . insert ( a, b ) : a 위치에 b 를 삽입
lis . remow ( 값 ) : 가장 처음에 있는 값을 삭제
lis . pop ( ) : 맨 마지막에 있는 값을 출력하고 삭제
lis . count ( 값 ) : 값이 몇 개 있는지 출력
lis . extend ( list ) : lis + list
set . add ( 값 ) : 값 1개 추가
set . update ( list ) : 값 여러개 추가 ( list 에 담아서 )
set . remove ( 값 ) : 값 삭제 ( 여러개는 불가능 )
dict [ key ] = value : 정보 추가
del dict [ key ] : key 에 대한 정보 삭제
dict . clear ( ) : 딕셔너리 모두 삭제
dict . get ( key ) : key 값의 value 반환
key in dict : key 포함여부 -> boolean 데이터형 반환
dict . keys ( ) : dict_keys ([ key list ]) 라는 객체를 리턴해줌
( key list )
dict . values ( ) : dict_values ([ value list ]) 라는 객체를 리턴해줌
( value list )
dict . items ( ) : dict_items ([ item list ]) 라는 객체를 리턴해줌
( item list ) ( <- key value pair 모음 )
dict _keys, dict _values, dict _items 등은 리스트로 변환하지 않더라도,
기본적인 반복 ( iterate ) 구문 ( 예 : for문 ) 을 실행할 수 있어요~
dict _ 객체는
list 고유의 append, insert, pop, remove, sort 함수는 수행할 수 없어요.
-> list ( dict . ~~~ ( ) )를 사용하면 됨
( 자료형 변환은 다른내용과 함께 뒤에서 다룰거에요! )
( 정리하느라 죽는줄; )
요정도면,
은 준비할 수 있을 것 같습니다....
( 아니라구요?;; 열심히했는데 ㄷㄷ ㅠ )
이번 글까지 아주아주 기본적인 부분에 대한 정리를 마쳤습니다.
이 이후에 올 내용들은 좀 더 정리가 필요해서,
시리즈 업데이트는 한동안 미뤄질 것 같습니다.
다음 글까지 숙제는
입니다.
( 살인적인 분량... 죽어버리겟자너... )
띵언과 마무리 인사로 끝낼게요 ㅎ
( 조금 먼 시간 뒤에 다시 뵈욥! )