1) 기본 자료형
- 문자열 : 큰 따옴표, 작은 따옴표 모두 가능
2) 리스트
[] # 빈 리스트 / ['a','b'] / ['a', 2] # 다른 자료형을 담을 수 있음
3) 주석
# / """ """
#숫자 50과 숫자 50을 더해서 출력해봅시다!
print(50+50)
#문자열 "50"과 문자열 "50"을 더해서 출력해봅시다!
print('50' + '50')
#리스트 [50]과 리스트 [50]을 더해서 출력해봅시다!
print([50] + [50])
(결과)
100 5050 [50, 50]
코드 실행이 완료되었습니다.
4) 변수
숫자,알파벳,한글,언더바(_)등을사용할수있다.
1.변수이름이숫자로시작하면안된다
2.숫자로만구성된변수이름금지
3.파이썬문법에서사용되는예약어(이미사용되는단어:for, while, if...)사용금지
4.공백문자()와연산자(+,-,%등)사용금지
num= 10 # 숫자
name= “Michael” # 문자열
grade= [‘A+’, ‘B+’, ‘A0’] # 리스트
# 변수에는 정수, 실수같은 숫자를 저장할 수 있고,
num1 = 1
num2 = 2
# 영어나 한글같은 문자도 저장할 수 있어요.
character = 'a'
# 이런 문자들의 집합도 저장할 수 있고,
string = 'Python'
# 자료들을 여러 개 담을 수 있는 리스트 또한 저장할 수 있어요.
threeList = [1, 'a', 'Python']
# 여러분의 변수를 만들어 봅시다. my_var라는 이름의 변수를 만들고, 원하는 값을 넣어보세요!
my_var = 10
# 변수는 print()에 넣을 수도 있어요! my_var를 print로 출력해서 값이 잘 들어갔는지 확인해봅시다!
my_var = 20
print(my_var)
# 변수끼리는 연산 또한 가능합니다. 예를들어, 위에 있는 num1, num2을 더하면?!
num1 = 20
num2 = 30
print(num1+num2)
5) 자료형의 연산 ( +,-,*,/ )
print(3+5) #8
print(3-5) #-2
print(3*5) #15
print(3/5) #0.6
#'Num1'이라는 변수를 하나 선언하고, 숫자 23571를 넣어줍시다.
Num1 = 23571
#'Num2'이라는 변수를 하나 선언하고, 이전 값에 1024를 곱한 값을 넣어줍시다.
Num2 = Num1 * 1024
#'Num3'이라는 변수를 하나 선언하고, 이전 값에 243을 나눈 값을 넣어줍시다.
Num3 = Num2 / 243
#'Num4'이라는 변수를 하나 선언하고, 이전 값에 4927819을 더한 값을 넣어줍시다.
Num4 = Num3 + 4927819
#'Answer'이라는 변수를 하나 선언하고, 이전 값에 829176을 뺀 값을 넣어줍시다.
Answer = Num4 - 829176
#지효에게 외쳐봅시다. '네가 생각한 답은 Answer원이야!'
print("네가 생각한 답은", Answer, "원이야!")
6) 자료형의 특수 연산
몫 연산자 //
나머지 연산자 %
제곱연산자 **
print(13//5) #2
print(13%5) #3
print(2**4) #16
# //을 이용해서 변수 intdiv에 4를 넣는 수식을 작성해봅시다.
intdiv = 21 // 5
# %을 이용해서 변수 modular에 1을 넣는 수식을 작성해봅시다.
modular = 9 % 4
# **을 이용해서 변수 expo에 16을 넣는 수식을 작성해봅시다.
expo = 2 ** 4
#위의 세 변수를 출력해서 확인해봅시다.
print(intdiv, modular, expo)
7) 문자형 자료의 연산
이어붙이기 +
반복하기 *
print(“안녕”+“하세요”) #안녕하세요
print(“안녕”* 3) #안녕안녕안녕
# 변수 connect_str를 선언하고, 연결 연산자를 이용해서 '덩덕쿵덕'를 넣어봅시다.
connect_str = "덩덕" + "쿵덕"
# 변수 iterate_str를 선언하고 반복 연산자를 이용해서 '쿵덕쿵덕'을 넣어봅시다.
iterate_str = "쿵덕" * 2
# 위 두 변수를 이용해서 '덩덕쿵덕쿵덕쿵덕덩덕쿵덕쿵덕쿵덕'을 변수 jajinmori에 넣어봅시다
jajinmori = (connect_str + iterate_str) * 2
print(jajinmori)
8) 인덱스
“R e a d y”01 2 3 4[2, 4, 6, 8]01 2 3
# alpha에서인덱스1인원소‘e’를출력
alpha = “Ready”print(alpha[1])
# beta에서 2번째원소이상,5번째원소미만을가져온다.
beta = [2, 4, 6, 8, 10, 12, 14]
print(beta[2:5])
리스트를 슬라이싱하기 위해서는 [a(시작인덱스):b(종료인덱스)]로 범위를 지정합니다. 이 때, 종료 인덱스는 '미만’으로 읽어 가져오지 않아요!
#dahyun가 가지고 있는 보석 중에 특별히 빛나는 보석이 있어요! 이를 훔쳐볼까요?
dahyun = ['은', '은', '다이아몬드', '은', '은', '은', '은', '은']
#이 가방에 한번 넣어봅시다!
stealBag1 = dahyun[2]
#tzuyu는 금빛 보석을 많이 가지고 있네요! 이도 한번 훔쳐볼까요?
tzuyu = ['은', '은', '은', '은', '금', '금', '금', '은', '은', '은']
#이 가방에 한번 넣어봅시다!
stealBag2 = tzuyu[4:7]
#여러분이 훔쳐온 보석은 무엇인지 print()를 이용해서 한번 확인해보세요!
print('dahyun로부터 훔쳐온 보석은', stealBag1)
print('tzuyu로부터 훔쳐온 보석은', stealBag2)
#친구에게 어제 봤던 별자리를 print()를 이용해서 보여줍시다!
print("*")
print("*" * 2)
print("*" * 3)
print("*" * 4)
print("*" * 5)
#섭씨온도를 담을 변수 c를 선언하고, 숫자 18을 담아봅시다.
c = 18
#화씨온도를 담을 변수 f를 선언하고, c와 섭씨-화씨 변환식을 이용해서 값을 담아봅시다.
f = c * (9/5) + 32
#변수 today_temp를 선언하고, 섭씨온도 c와 화씨온도 f를 순서대로 담은 리스트를 담아봅시다.
today_temp = [c,f]
#맞게 변환했는지 today_temp를 print()로 확인해봅시다.
print(today_temp)
9) 형변환
#변수 money에 input을 이용해서 입력을 받아봅시다.
money = input()
# money를 int형으로 변환해서, 다시 money에 넣어줍시다.
money = int(money)
# money를 2배 불려서 print로 출력해봅시다.
print(money * 2)
10) 비교 연산자 (=논리자료형)
참(True) 혹은 거짓(False)을 나타내는 자료형을 논리자료형이라고 합니다.
11) 논리 연산자
print(not 3==4) #False
Not을붙였으므로,True!>>>True
12) if ( 두 칸 띄어쓰기 )
if string[0] == “a”:
count = count + 1
print(string)
x = input()
if x in [‘a’, ‘e’, ‘i’, ‘o’, ‘u’]:
print(“모음입니다.”)
else:
print(“자음입니다.”)
# input()을 이용해서 숫자(정수) 입력을 받고, 변수 num에 이를 넣어봅시다.
a = input()
num = int(a)
# if-else문을 이용해서 만약 입력받은 수가 홀수면 "(입력받은 수) 홀수입니다."
# 짝수면 "(입력받은 수) 짝수입니다."를 출력해봅시다.
# 괄호는 출력하지 않습니다.
if (num%2) == 0:
print("(입력받은 수) 짝수입니다.")
else:
print("(입력받은 수) 홀수입니다.")
13) list - append(), remove(), insert(), sort() - asc, sort(reverse=1) - desc
a = [] b = [‘a’, ‘b’, ‘c’]
a.append(10)
b.append(‘d’)
print(a, b) # [10] [‘a’, ‘b’, ‘c’, ‘d’]
c = [1, 2, 4, 5]
c.insert(2, 3)
print(c) # [1, 2, 3, 4, 5]
- 처음 나오는 자료 d를 제거
d = [3, 1, 2, 3]
d.remove(3)
print(d)# [1, 2, 3]
e = [6, 2, 4, 1]
f = [‘carrot’, ‘apple’, ‘banana’]
e.sort()
f.sort()
print(e, f) # [1, 2, 4, 6] [‘apple’, ‘banana’, ‘carrot] # 문자열은 사전순
14) sequence
순서가 있는 자료형 (리스트, 문자열 등이 이에 속함)
- 원소간의 순서가 존재 -> 인덱싱/슬라이싱 가능
a = “once”
b = [‘t’, ‘w’, ‘i’, ‘c’, ‘e’]
print(a[1]) # n
print(b[2:4])# [‘i’, ‘c’]
a = “once” b = [‘t’, ‘w’, ‘i’, ‘c’, ‘e’]
print(a[-1])# e | 뒤에서1번째원소
print(b[:3])# [‘t’, ‘w’, ‘i’] | 처음~3번째슬라이싱
a = “once” b = [‘t’, ‘w’, ‘i’, ‘c’, ‘e’]
print(‘o’ in a)# True
print(‘b’ in c)# False
a = “once” b = [‘t’, ‘w’, ‘i’, ‘c’, ‘e’]
print(len(a))# 4
print(len(b))# 5
시퀀스의 인덱싱과 슬라이싱
- 인덱싱 : 시퀀스의 한 원소를 가져오는 것
- 슬라이싱 : 시퀀스의 일부분을 가져오는 것
my_list = [1, 2, 3, 4, 5] print(my_list[2]) #3 print(my_list[1:4]) #[2, 3, 4] Copy
아래 실습을 따라해보면서 시퀀스에서 인덱싱과 슬라이싱을 하는 방법을 익혀봅시다.
이렇게 해봐요!
-
문자열 "Impossible"이 담긴 변수 my_str을 만들어봅시다.
-
리스트 ["Apple", "Banana", "Chamwae", "Durian"]이 차례대로 담긴 변수 my_list를 만들어봅시다.
-
리스트 my_list에서 인덱싱을 이용해 변수 var1에 "Chamwae"를 넣어봅시다.
-
문자열 my_str에서 슬라이싱을 이용해 변수 var2에 "possible"을 넣어봅시다.
my_str = "Impossible"
my_list = ["Apple","Banana","Chamwae","Durian"]
var1 = my_list[2]
var2 = my_str[2:]
print(var1)
print(var2)
시퀀스의 길이와 멤버 조사하기
- 길이 : len(시퀀스)
- 멤버 조사 : 원소 in 시퀀스 (존재하면 True, 존재하지 않으면 False)
my_str = "abc" print(len(my_str)) #3 - my_str의 길이 print('d' in my_str) #False - 존재하지 않음 Copy
아래 실습을 따라해보면서 시퀀스의 길이와 멤버를 조사하는 방법을 익혀봅시다.
my_str = "Impossible"
my_list = ["Apple","Banana","Chamwae","Durian"]
var1= len(my_str)
var2 = ("Egg" in my_list)
15) for
sum = 0
for i in [1,2,3]:
sum = sum + i
print(sum)
length= 0
for x in ‘abcdefg’:
length= length+ 1
16) range
range연속 되는숫자를 만들어주는 시퀀스 자료형
range(0, 9) #0, 1, ... , 7, 8
range(5) #range(0, 5) –0, 1, 2, 3, 4
a = [1]
for i in range(2, 4):
a.append(i)
print(a) #[1, 2, 3]
17) while
i= 5
while i>0:
print(i)
i = i-1
print(“Launch!”)
i= 0
while True:
print(“knock”)
if i>= 3:
break
i= i+ 1
18) 객체
사람 : 이름, 성별,
19) 배열
20) 해쉬
studentIds= {“박지나”:123,“송호준”:145,“이주원”:563 }
print(studentIds[“박지나”])
Key를이용해서Value 가져오기: 대략O(1)
배열 VS 해쉬
해쉬
식별자가있는데이터,
시간복잡도↓/공간복잡도↑
배열
식별자가없는데이터,
시간복잡도↑/공간복잡도↓
Dictionary / Set
Value 없이Key만있는Dictionary
studentNames= {“박지나”, “송호준”, “이주원”, “손지윤”}
'은행실무기초' 카테고리의 다른 글
[2020.10.13] 외환전문역 2종_무역과 수출입거래의 정의 (0) | 2020.10.13 |
---|---|
[온라인 2차평가] 여신 (1) | 2020.08.12 |
[1주차~5주차] 은행실무기초 (0) | 2020.08.11 |
[수신/신탁] 예금거래 (part2) (0) | 2020.06.22 |
[수신/신탁] 예금거래 (part1) (0) | 2020.06.20 |