코딩 테스트 (Python)/문법
[문법] 파이썬 기초 문법
hihyuk
2024. 1. 4. 15:34
01. 변수
값을 담는 박스 (값을 가리키고 있다)
a = 3 # 3
a = 3.4 # 3.4
a = 'hi' # hi
a = True # True
a = (3 > 2) # True
a = (3 == 2) # False
02. 문자열 다루기
first_name = 'hello'
last_name = 'world'
print(first_name+last_name) # helloworld
- 문자열끼리 더하면 그대로 이어진다
a = 2
b = '2' # str(2)
print(a) # 2 숫자
print(b) # 2 문자열
print(a+b) # Error
- str(n) : 숫자를 문자열로 바꿔준다
- 출력시 같은 값이라도 변수에 넣어준 값에 따라 숫자와 문자열로 나뉨
text = 'abcdefghijk'
len(text) # 11
text[:3] # abc
text[3:] # defghijk
text[:] # abcdefghijk
- len() : 문자열의 길이
- [:n] : 앞에서부터 n개까지 문자열 자르기
- [n:] : 앞에서부터 n개를 제외한 나머지 문자
- [:] : 그대로 출력
myemail = 'abc@naver.com'
result = myemail.split('@')[1]
print(result) # naver.com
- .split() : 문자열을 괄호 안의 값을 기준으로 자른다.
03. 리스트와 딕셔너리
리스트
a_list = [2, '사과', False, ['사과', '감']]
print(a_list) # [2, '사과', False , ['사과', '감']]
print(a_list[0]) # 2
print(a_list[3][1]) # 사과
- 리스트에 리스트를 담는 것도 가능하다
a_list = [1,5,6,3,2]
a_list.append(99)
a_list.append(100)
print(a_list) # [1, 5, 6, 3, 2, 99, 100]
- .append() : 괄호 안의 값을 리스트 가장 뒤에 추가
a_list = [1,5,6,3,2]
a_list[:3] # [1, 5, 6]
a_list[-1] # 2
len(a_list) # 5
a_list.sort(reverse=True) # [6, 5, 3, 2, 1]
5 in a_list # True
- [:n] : 앞에서부터 n개까지 리스트를 자른다
- [-1] : 리스트의 가장 마지막 인덱스 값
- len() : 리스트의 길이
- .sort(reverse=True) : 리스트를 뒤집는다
- n in list : 리스트 안에 n이 존재하면 True 존재하지 않으면 False
딕셔너리
a_dict = {'name':'bob', 'age':27, 'friend':['영희', '철수']}
print(a_dict['name']) # bob
print(a_dict['friend'][1]) # 철수
print('height' in a_dict) # false
a_dict['height'] = 180 # 딕셔너리에 추가
print(a_dict) # {'name':'bob', 'age':27, 'friend':['영희', '철수'], 'height':180}
- 딕셔너리 안에 리스트가 들어갈 수 있다
- key값으로 value값을 찾아서 전달해준다.
- in : key값으로 딕셔너리에 값이 존재하는지 찾을 수 있다.
- dict[key] = value : 딕셔너리에 존재하지 않는 값을 key값과 value값을 입력해주면 자동으로 추가된다
리스트와 딕셔너리의 조합
people = [{'name':'bob', 'age':27}, {'name':'john', 'age':30}]
print(people[1]) # {'name':'john', 'age':30}
print(people[1]['age']) # 30
- 리스트안에 딕셔너리를 넣는 것도 가능하다.
- 여러개가 들어가는 것도 가능
04. 조건문
if ~ elif ~ else 문
money = 5000
if money > 3800:
print('택시를 타자!')
elif money > 1200:
print('버스를 타자!')
else:
print('걸어가자')
- 조건문을 작성 후 뒤에 : 를 붙여주어야 함
05. 반복문
for ~ in 문
fruits = ['사과', '배', '감', '수박', '딸기']
for fruit in fruits:
print(fruit)
# 사과
# 배
# 감
# 수박
# 딸기
- 반복문을 작성 후 뒤에 : 를 붙여주어야 함
people = [
{'name':'bob', 'age':27},
{'name':'john', 'age':30},
{'name':'carry', 'age':18},
{'name':'smith', 'age':20},
{'name':'ben', 'age':40}
]
for i, person in enumerate(people):
name = person['name']
age = person['age']
print(i, name, age)
if i > 2:
break
# 0 bob 27
# 1 john 30
# 2 carry 18
# 3 smith 20
- enumerate() : 출력값을 if문을 통해 정해줄 수 있다.
06. 함수
def hello():
print('hi')
hello() # hi
- def : 함수를 만들어 줌
def bus_rate(age):
if age > 65:
return 0
elif age > 20:
return 1200
else:
return 750
print(bus_rate(15)) # 750