파이썬 문법 뽀개기(기초)

jini·2022년 11월 8일
0

Sparta Coding🦸‍♂

목록 보기
1/8
post-thumbnail

빠르게 훑고 넘어가자 (기본개념정도만 탑재해야함)

파이썬 = 읽기 쉬운 코드

절대로 절대로 외우는게 아니다.
"그런 개념이 있었지! 강의자료를 다시 뒤적여볼까?" 정도면 아주 충분


변수 선언과 자료형

a//b  # 3 (몫)
a%b   # 1 (나머지)
a**b  # 49 (거듭제곱)

문자열 다루기

a = '2'
b = 'hello'

print(a+b)

Run하면? 2hello
문자열이라서 그대로 더해지는 값이 나온다.

a = 2
b = 'hello'

print(a+b)

Run하면?에러가 뜬다. 숫자와 문자를 더하면 무슨 뜻이야?!!!

문자'2'와 숫자 2는 다른 값!
문자열로 나타내기 '2' = str(2) 같은 값!

text = 'abcdefghijk'

result = text

print(result)

1)문자열의 길이 세기

result = len(text)으로Run하면? 7

2)문자열 자르기

result = text[:3] Run하면? abc (앞의 3글자)
result = text[3:] Run하면? defghijk (3글자 뒤부터)
result = text[3:8] Run하면? defgh

3)문자열 자르기-2

my email = 'abc@sparta.com'

result = myemail.split('@')

print(result)

Run하면? ['abc' , 'sparta.com']

result = myemail.split('@')[1]
Run하면? ['sparta.com']

result = myemail.split('@')[1].split('.')
Run하면? ['sparta' , 'com']

result = myemail.split('@')[1].split('.')[0]
Run하면? ['sparta']


리스트와 딕셔너리

리스트와 딕셔너리 = 값을 담는 방법

list는 순서가 중요하게 값을 담는 것
딕셔너리 key:value로 값을 담는 것

1.리스트(list)

1)추가하기 append

a = [1, 2, 3]
a.append(5)
print(a)     # [1, 2, 3, 5]

a.append([1, 2])
print(a)     # [1, 2, 3, 5, [1, 2]]

2)인덱싱

a = [1, 3, 2, 4]
print(a[3])  # 4
print(a[1:3]) # [3, 2]
print(a[-1]) # 4 (맨 마지막 것)

3)정렬(sort)

a_list = [1,5,6,3,2]
a_list.sort
print(a_list)        
                    #[1,2,3,5,6]

a_list.sort(reverse=true) 출력시 #[6,5,3,2,1]

4)요소가 리스트 안에 있는지 알아보기

a_list = [1,5,6,3,2]
result = (99 in a_list)
print(result)          
                        #False

99가 a_list 안에 있니? False

2.딕셔너리 (dictionary)

a_dict = {"name":"Bob", "age": 21}
print(a_dict["name"])     #Bob

1)업데이트하거나 추가하기

person = {"name":"Bob", "age": 21}

person["name"] = "Robert"
print(person)  

# {'name': 'Robert', 'age': 21}

person["height"] = 174.8
print(person)  

# {'name': 'Robert', 'age': 21, 'height': 174.8}

2)해당 키(key)가 존재하는지 알고 싶을 때는 'in'을 사용

person = {"name":"Bob", "age": 21}

print("name" in person)       # True
print("email" in person)      # False
print("phone" not in person)  # True

3.리스트와 딕셔너리의 조합


people = [
	{'name':'bob','age':27},
    {'name':'jake','age':30}
]

print(people[1]['age']

                         #30

조건문

if 와 else만 알면 끝!

money = 5000

if money > 3800:
	print('택시를 타자')
elif money >1200:
	print('버스를 타자')
else:
	print('걸어가자')

파이썬 코드 들여쓰기 신경쓰기


반복문

for

fruits = ['사과', '배', '감', '귤']

for fruit in fruits:
    print(fruit)

<연습 예제>


Q. 리스트에서 짝수만 출력하는 함수 만들기

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

for num in num_list:
    if num % 2 == 0:
        print(num)

Q. 리스트에서 짝수의 개수를 출력하기

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

count = 0
for num in num_list:
    if num % 2 == 0:
        count += 1

print(count)

count += 1 ; count = count + 1


Q. 리스트 안에 있는 모든 숫자 더하기

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

sum = 0
for num in num_list:
    sum += num

print(sum)

sum += num ; sum = sum+num



Q. 리스트 안에 있는 자연수 중 가장 큰 숫자 구하기

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

max = 0
for num in num_list:
    if max < num:
        max = num

print(max)

함수

함수는 반복적으로 사용하는 코드들에 이름을 붙여놓은 것

def hello():
	print("안녕!")
    print("반가워")

hello()
hello()

안녕!
반가워
안녕!
반가워

2번 실행해서 print값이 두번 반복되서 나온다.


조건문을 넣어 실행할때,

def bus_rate(age):
    if age > 65:
        print("무료로 이용하세요")
    elif age > 20:
        print("성인입니다.")
    else:
        print("청소년입니다")

bus_rate(27)
bus_rate(10)
bus_rate(72)

성인입니다.
청소년입니다
무료로 이용하세요

Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기
주민번호를 분리해서 뒷번호에서 맨 앞자리 숫자를 뽑은 후, 짝수찾는 방법을 이용해서 여성/남성 나오게함

def check_gender(pin):
    num = pin.split("-")[1][:1]
    if int(num) % 2 == 0:
        print("여성")
    else:
        print("남성")

check_gender("200101-3012345")

"2"라는 문자열을 숫자로 바꾸려면?
int("2") 이렇게, int로 감싸주세요!


profile
🌱

0개의 댓글