코딩 테스트 (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